Winforms的DataGrid怎么使 Bool 型字段值显示为文字 是/否[转载]

Winforms的DataGrid怎么使 Bool 型字段值显示为文字 是/否[转载]

 

方法一:
如果你的sql是这样的
select boolfield,textfield from xxxTable where ....
那么修改为
select (cast when boolfield 1 then '是' else '否' end) as boolfieldEx,textfield from xxxtable where ....

也就是说,在记录集里就把bool类型字段换为text类型字段



方法二:

全部都指定为DataGridTextBoxColumn 作为列,如果你没增加dataGridTableStyle,那么dataGrid在设置数据源之后会自动根据字段类型来分配,你唯一要作的就是象下面的代码那样指定每一列的风格;另外,dataGrid的列风格只支持布尔型和文本型。
//创建风格
DataGridTableStyle dbTs = new DataGridTableStyle();
//你的字段一的风格
System.Windows.Forms.DataGridTextBoxColumn column = new DataGridTextBoxColumn();
column.NullText 
= "";
column.HeaderText
= "你的字段标题名1";
column.MappingName
= "你的字段名1";
column.Width
=100;
dbTs.GridColumnStyles.Add(column);
//你的字段二的风格
System.Windows.Forms.DataGridTextBoxColumn column = new DataGridTextBoxColumn();
column.NullText 
= "";
column.HeaderText
= "你的字段标题名2";
column.MappingName
= "你的字段名2";
column.Width
=100;
dbTs.GridColumnStyles.Add(column);
//加入风格
DataGrid.TableStyles.Clear();
DataGrid.TableStyles.Add(dbTs);

你把布尔字段列指派为DataGridTextBoxColumn,不用DataGridBoolColumn 列风格即可。
原文地址:https://www.cnblogs.com/madgoat/p/698670.html