基于网格宽度的DevExpress网格自定义列大小计算

时间:2014-08-19 02:38:43

标签: c# datagridviewcolumn devexpress-windows-ui

我的项目需要在网格中显示联系人列表。普通数据 - 名字,姓氏,城市,州,邮编,电子邮件,电话,公司名称。

1 - 我们需要支持屏幕宽度的广泛变化800px - > 2,000px。

2 - 我们想尽可能多地显示信息,尽可能少的空白区域。

3 - 随着网格变宽,我们希望某些字段扩展(组织名称),其他字段保持最大宽度(状态 - 2字符)。

由于没有Max Width列,所以标准列调整大小模式似乎都不起作用。州立柱最终占据了大量的空间,而且这个组织仍然被切断了。

有人解决了这个问题吗?

1 个答案:

答案 0 :(得分:0)

我的Gridview遇到了类似的问题,并且出于同样的原因我已经向Devexpress团队提出了一张票[{3}}。当你有固定宽度的列时,似乎SetWidth()客户端JS方法无法正常工作。

在您的情况下,我建议您使用需要动态扩展的列的百分比大小和其他的列的静态大小。还要为要将文本紧密包裹在其中的单元格设置文本换行。

    settings.Columns.Add(column =>
    {
        var commmonHeaderStyle = column.HeaderStyle as GridViewHeaderStyle;
        commmonHeaderStyle.Font.Bold = true;
        column.CellStyle.Wrap = DefaultBoolean.True;
        column.FieldName = "Test";
        column.Width = System.Web.UI.WebControls.Unit.Percentage(30);

    });

您可能还想查看此示例:Devexpress ticket