求教,无法改变DataGrid中控件的状态
碰到一个很奇怪的问题,DataGrid无法获得更新后的值,我在写UpdataCommand
事件的时候,进入Edit模板使用TextBox试图改变cell中的值,点击“更新”后Grid
中的值并没有改变,trace之后发现(TextBox)e.Item.Cells[4].Controls[0]获得的
值并不是我改变后的值,而是原来与DataGrid绑定过后的值,也就是说在用未编辑之
前的值更新数据库……
同样的问题也发生在同一个Grid的另一个CheckBox模板列中,代码如下:
string id = "";
foreach(DataGridItem dataGridItem in DataGrid.Items)
{
if (dataGridItem.ItemType == ListItemType.Item || dataGridItem.ItemType == ListItemType.AlternatingItem)
if (((CheckBox)dataGridItem.Cells[6].FindControl("chkDelete")).Checked)
{
id += dataGridItem.Cells[3].Text + ",";
}
}
无论选中多少个CheckBox
((CheckBox)dataGridItem.Cells[6].FindControl("chkDelete")).Checked的值都为
false,也就是说CheckBox也还是保持它的原始状态(未选中),请各位不吝赐教,小
弟在此谢过了。
事件的时候,进入Edit模板使用TextBox试图改变cell中的值,点击“更新”后Grid
中的值并没有改变,trace之后发现(TextBox)e.Item.Cells[4].Controls[0]获得的
值并不是我改变后的值,而是原来与DataGrid绑定过后的值,也就是说在用未编辑之
前的值更新数据库……
同样的问题也发生在同一个Grid的另一个CheckBox模板列中,代码如下:
string id = "";
foreach(DataGridItem dataGridItem in DataGrid.Items)
{
if (dataGridItem.ItemType == ListItemType.Item || dataGridItem.ItemType == ListItemType.AlternatingItem)
if (((CheckBox)dataGridItem.Cells[6].FindControl("chkDelete")).Checked)
{
id += dataGridItem.Cells[3].Text + ",";
}
}
无论选中多少个CheckBox
((CheckBox)dataGridItem.Cells[6].FindControl("chkDelete")).Checked的值都为
false,也就是说CheckBox也还是保持它的原始状态(未选中),请各位不吝赐教,小
弟在此谢过了。
...全文
相关推荐
vb中datagrid控件的详细使用方法
vb中datagrid控件的详细使用方法,拿出来给大家看看!!!!是学习datagrid控件的好助手
C#实现改变DataGrid某一行和单元格颜色的方法
本文所述实例主要实现WPF项目中C#改变DataGrid某一行和单元格颜色的功能。分享给大家供大家参考。具体方法如下: 如果要改变DataGrid某一行的颜色、高度,以及某个单元格的颜色、单元格字体的颜色,就必需取到datagrid的一行和一行的单元格,通过查找相关资料及测试总结出如下实例代码,现记录下来便于大家参考使用。 1、前台WPF界面添加一个DataGrid控件,并添加两列(便于编写,达到目的即可) <DataGrid AutoGenerateColumns="False" Height="642" HorizontalAlignment="Left" Margin="131,57,
Microsoft DataGrid控件
将压缩包中的文件全部放在C盘system32目录下,然后注册MSDATGRD.OCX和msstdfmt.dll。
WPF中的DataGrid、Button、ComboBox等样式+DataGrid分页控件
图片是在XP下截的,所以看不出效果,在Win7下效果好点.其中的DataGrid分页绑定控件方法只要传入被绑定的DataGrid对象和数据源就可以绑定了,操作简单.
MFC DataGrid控件用法详解
对MFC中的DataGrid控件的用法进行了一些总结


