按DataType格式化GridView列
本文关键字:GridView 格式化 DataType | 更新日期: 2023-09-27 18:23:54
嗨,我正在开发一个小型的winforms应用程序,我更像是一名网络开发人员,所以请原谅我在这里的无知。
基本上,我有一堆网格视图,我正在从后面的代码中绑定,比如:
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"]
应该足够了。