主题:请教模板列中的控件的enabled属性的设置。
大家好,我想用datagrid的编辑列对模板列中的TEXTBOX控件进行设置,可是
private void dataGrid_UpdateCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)
{
this.dataGrid.EditItemIndex=e.Item.ItemIndex;
// string startTime=((TextBox)e.Item.FindControl("txtSTime")).Text;
// string endTime=((TextBox)e.Item.FindControl("txtETime")).Text;
//((TextBox)e.Item.Cell[2].Controls[0]).Text
((TextBox)e.Item.Cells[9].FindControl("txtSTime")).Enabled=true;
((TextBox)e.Item.Cells[10].FindControl("txtETime")).Enabled=true;
if(DB.ExecuteNonQuery(SPHelper.Exam_SetHeader("updateTime",MySession.LoginName,MySession.OpUID,MySession.CurRoleID,null,null,null
,((TextBox)e.Item.Cells[9].FindControl("txtSTime")).Text,((TextBox)e.Item.Cells[10].FindControl("txtETime")).Text,null,null,null,null,null,null,null,null,null,null,null,null))>0)
{
dataGrid.EditItemIndex = (int)e.Item.ItemIndex;
((TextBox)e.Item.Cells[9].FindControl("txtSTime")).Enabled=false;
((TextBox)e.Item.Cells[10].FindControl("txtETime")).Enabled=false;
}
BindDataGrid();
}
private void dataGrid_EditCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)
{
dataGrid.EditItemIndex = (int)e.Item.ItemIndex;
((TextBox)e.Item.Cells[9].FindControl("txtSTime")).Enabled=true;
((TextBox)e.Item.Cells[10].FindControl("txtETime")).Enabled=true;
BindDataGrid();
}
private void dataGrid_CancelCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)
{
dataGrid.EditItemIndex = -1;
((TextBox)e.Item.Cells[9].FindControl("txtSTime")).Enabled=false;
((TextBox)e.Item.Cells[10].FindControl("txtETime")).Enabled=false;
BindDataGrid();
}
我这样写了之后,运行了,每个事件也都执行了,可是控件仍不可用,请问是怎么回事?
private void dataGrid_UpdateCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)
{
this.dataGrid.EditItemIndex=e.Item.ItemIndex;
// string startTime=((TextBox)e.Item.FindControl("txtSTime")).Text;
// string endTime=((TextBox)e.Item.FindControl("txtETime")).Text;
//((TextBox)e.Item.Cell[2].Controls[0]).Text
((TextBox)e.Item.Cells[9].FindControl("txtSTime")).Enabled=true;
((TextBox)e.Item.Cells[10].FindControl("txtETime")).Enabled=true;
if(DB.ExecuteNonQuery(SPHelper.Exam_SetHeader("updateTime",MySession.LoginName,MySession.OpUID,MySession.CurRoleID,null,null,null
,((TextBox)e.Item.Cells[9].FindControl("txtSTime")).Text,((TextBox)e.Item.Cells[10].FindControl("txtETime")).Text,null,null,null,null,null,null,null,null,null,null,null,null))>0)
{
dataGrid.EditItemIndex = (int)e.Item.ItemIndex;
((TextBox)e.Item.Cells[9].FindControl("txtSTime")).Enabled=false;
((TextBox)e.Item.Cells[10].FindControl("txtETime")).Enabled=false;
}
BindDataGrid();
}
private void dataGrid_EditCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)
{
dataGrid.EditItemIndex = (int)e.Item.ItemIndex;
((TextBox)e.Item.Cells[9].FindControl("txtSTime")).Enabled=true;
((TextBox)e.Item.Cells[10].FindControl("txtETime")).Enabled=true;
BindDataGrid();
}
private void dataGrid_CancelCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)
{
dataGrid.EditItemIndex = -1;
((TextBox)e.Item.Cells[9].FindControl("txtSTime")).Enabled=false;
((TextBox)e.Item.Cells[10].FindControl("txtETime")).Enabled=false;
BindDataGrid();
}
我这样写了之后,运行了,每个事件也都执行了,可是控件仍不可用,请问是怎么回事?