求教,无法改变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控件的详细使用方法
**添加DataGrid控件** 在VB中,你可以通过工具箱(Toolbox)来添加`DataGrid`控件到窗体(Form)。只需从工具箱中找到`DataGrid`控件并将其拖放到窗体上。
C#实现改变DataGrid某一行和单元格颜色的方法
"C#实现改变DataGrid某一行和单元格颜色的方法,主要涉及WPF项目中的DataGrid控件操作,包括如何动态设置行和单元格的样式,以实现视觉效果的个性化定制。"在WPF开发中,DataG
Microsoft DataGrid控件
【Microsoft DataGrid控件】Microsoft DataGrid控件是Windows Forms应用程序中用于显示和操作数据库数据的一种组件。
WPF中的DataGrid、Button、ComboBox等样式+DataGrid分页控件
在描述中提到,虽然在XP系统下可能无法展现最佳效果,但在Win7及更高版本的操作系统上,DataGrid能更好地展示其功能和视觉吸引力。
MFC DataGrid控件用法详解
MFC DataGrid 控件用法详解MFC 中的 DataGrid 控件是一个非常实用的控件,用于显示数据,它提供了很多实用的功能,例如显示查询结果、控制显示、格式化数据等。


