繁体   English   中英

通过DataType格式化GridView列

[英]Formatting GridView Columns by DataType

嗨,我正在开发一个小型Winforms应用程序,我更多是Web开发人员,所以请原谅我对此处的任何不了解。

基本上,我从后面的代码中绑定了一堆gridview,例如:

        var con = new SelectOrdersLineItemByOrder() { ConnectionString = ConStr, fk_OrderID = Id };
        DataSet ds = con.ExecuteDataSet();
        gvVendors.DataSource = ds.Tables[0];

目前,我正在格式化这样的列:

        gvVendors.Columns[5].FormatString = "{0:dd/MM/yyyy}";

由于缺少更好的词,这是一个痛苦的屁股!

有没有办法挂接事件处理程序或在事实发生后进行迭代并说出类似以下内容:

        foreach (column c in gvVendors)
        {
            if(c is DateTime) { Format Accordingly ... }
            if(c is Decimal) { Format Accordingly ... }
        }            

任何帮助是极大的赞赏 ...

您可以简单地编写自己的方法,例如FormatGrid()来为您完成所有格式化,然后在为其分配数据源后调用它。 喜欢

     var con = new SelectOrdersLineItemByOrder() { ConnectionString = ConStr, fk_OrderID = Id };
    DataSet ds = con.ExecuteDataSet();
    gvVendors.DataSource = ds.Tables[0];
    FormatGrid();

您可以使用以下属性来设置格式。

DataGridViewCellStyle.Format

无需遍历各列。 您知道列名,并且它们不会动态更改,因此

   dataGridView1.Columns["YourColumnName"]

应该足够了。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM