摘要:DevExpress WinForms拥有180+组件和UI库,能为Windows Forms平台创建具有影响力的业务解决方案。DevExpress WinForms能完美构建流畅、美观且易于使用的应用程序,无论是Office风格的界面,还是分析处理大批量的业
DevExpress WinForms拥有180+组件和UI库,能为Windows Forms平台创建具有影响力的业务解决方案。DevExpress WinForms能完美构建流畅、美观且易于使用的应用程序,无论是Office风格的界面,还是分析处理大批量的业务数据,它都能轻松胜任!
本文主要介绍如何使用DevExpress WinForms Data Grid组件的Best Fit选项。
通过双击列的右边缘也可以实现相同的功能,要一次调整所有列,请使用列标题菜单中的Best Fit (all columns) 选项。
在设计时应用Best Fit选项
同样的菜单在设计时是可用的,但是提到的菜单项或标题边双击将没有效果,因为没有加载数据。为了解决这个问题,您需要打开网格的Designer(设计器)对话框,然后切换到Layout Page(布局页面)。在这里您可以预加载数据,然后对列应用最适合的宽度。
限制记录的数量来应用Best Fit
默认情况下,当您对列应用Best Fit宽度时,视图将检查所有行的值,这可能会对较大数据源的性能产生不必要的影响。为了限制网格视图扫描的记录数量,使用GridView.OptionsView下的GridOptionsView.BestFitMaxRowCount 属性。在本例中,将其设置为3,并再次应用Best Fit宽度,来查看结果是否不同。
禁用Best Fit选项
如果您禁用列大小调整,Best Fit选项也被禁用 - 通过上下文菜单或双击列标题的右边缘。
强制列具有固定宽度
恢复所有更改选项的默认值,并设置列的OptionsColumn.FixedWidth选项。这意味着当您对视图应用Best Fit特性时,相应的列将保持其宽度。
在代码中应用Best Fit
向UI添加三个按钮,看看如何在代码中使用这个特性。一个按钮将调用网格视图的GridView.BestFitColumns方法,该方法会影响所有列。第二个方法使用列的GridColumn.BestFit方法,该方法应用与单个列。第三种方法为您提供了最大的灵活性,因为可以使用GridColumn.GetBestWidth方法计算宽度,然后在实际将更改应用于列之前调整该值。
C#
private void barButtonBestFitAll_ItemClick(object sender, ItemClickEventArgs e) {gridView1.BestFitColumns;}private void barButtonBestFit_ItemClick(object sender, ItemClickEventArgs e) {colProductName.BestFit;}private void barButtonBestFitPlus_ItemClick(object sender, ItemClickEventArgs e) {colProductName.Width = colProductName.GetBestWidth + 10;}现在可以运行应用程序,看看这三个方法在运行时是如何工作的。
来源:菲尔顺教育