1、 DATAGRID中有一个列为:DataGridBoolColumn列,名字为:Dgc_IsNull,我将它绑定到了数据表中的某个字段,这个字段类型是:string型的,其中的值有YES,No两种,我对数据表(DATATABLE)及这个列设置了以下属性:
Dgc_IsNull.FalseValue="No";
Dgc_IsNull.TrueValue="YES";
Dgc_IsNull.NullValue="No";
Dgc_IsNull.AllowNull=false;
tables.Columns[2].DefaultValue="YES"; //绑定的数据表列
现在的现象是:对于YES的值,显示为灰色的带钩的框,对于No的值,显示的是白色的带钩的框,
但是我需要的:对于YES的值,显示为带钩的框,对于No的值,显示为没有钩的框,决对不要白色的.
怎么解决.
2、 对于DATAGRID有没有事件是在改变当前行时触发的,我查了一下,只有在改变当前CELL时触发的一个CurrentCellChanged事件,我只要当前行改变时解发
Dgc_IsNull.FalseValue="No";
Dgc_IsNull.TrueValue="YES";
Dgc_IsNull.NullValue="No";
Dgc_IsNull.AllowNull=false;
tables.Columns[2].DefaultValue="YES"; //绑定的数据表列
现在的现象是:对于YES的值,显示为灰色的带钩的框,对于No的值,显示的是白色的带钩的框,
但是我需要的:对于YES的值,显示为带钩的框,对于No的值,显示为没有钩的框,决对不要白色的.
怎么解决.
2、 对于DATAGRID有没有事件是在改变当前行时触发的,我查了一下,只有在改变当前CELL时触发的一个CurrentCellChanged事件,我只要当前行改变时解发
改变当前行的事件可以用DATATABLE中的事件!!!!!
或者你帮定的数据类型的事件
2。可以用绑定的currencymanager的CurrentChanged事件。
private void dataGrid1_MouseDown(object sender, System.Windows.Forms.MouseEventArgs e)
{
DataGrid myGrid = (DataGrid) sender;
System.Windows.Forms.DataGrid.HitTestInfo hti;
hti = myGrid.HitTest(e.X, e.Y);
switch (hti.Type)
{
case System.Windows.Forms.DataGrid.HitTestType.RowHeader :
case System.Windows.Forms.DataGrid.HitTestType.Cell :
MessageBox.Show("the row header for row " + hti.Row); break;
}
}