如何让DataGrid 的EditItemTemplate中的DropDownList控件触发事件?
我在DataGrid 的EditItemTemplate中有一个DropDownList控件,我想触发它的SelectedIndexChanged事件,这样是可以做到的:
protected void change_state_SelectedIndexChanged(object sender, System.EventArgs e)
{
DataGrid.Columns[6].Visible=true;
}
但是这样就做不到了:
protected void change_state_SelectedIndexChanged(object sender, System.EventArgs e)
{
if(change_state.SelectedItem.Text=="显示")
{
DataGrid.Columns[6].Visible=true;
}
else
mould_editGrid.Columns[6].Visible=false;
}
系统会提示:在需要对象实例的地方发现了空值
我怎样做才能实现第二种方法呢?(VS.net Beat2)
问题点数:50、回复次数:14Top
1 楼yunhi()回复于 2002-03-22 23:53:35 得分 0
代码有些地方写错了,重新写一遍
我在DataGrid 的EditItemTemplate中有一个DropDownList控件,我想触发它的SelectedIndexChanged事件,这样是可以做到的:
protected void change_state_SelectedIndexChanged(object sender, System.EventArgs e)
{
DataGrid1.Columns[6].Visible=true;
}
但是这样就做不到了:
protected void change_state_SelectedIndexChanged(object sender, System.EventArgs e)
{
if(change_state.SelectedItem.Text=="显示")
{
DataGrid1.Columns[6].Visible=true;
}
else
DataGrid1.Columns[6].Visible=false;
}
系统会提示:在需要对象实例的地方发现了空值
我怎样做才能实现第二种方法呢?(VS.net Beat2)
Top
2 楼yunhi()回复于 2002-03-23 22:11:57 得分 0
??Top
3 楼niwalker()回复于 2002-03-24 02:16:11 得分 5
出错行在if(change_state.SelectedItem.Text=="显示") 吧,这是因为SelectItem为null.Top
4 楼yunhi()回复于 2002-03-24 10:57:53 得分 0
楼上的兄弟,我的DropDownList控件change_state是有“显示”这行Item的,而且change_state的AutoPostBack="True"。Top
5 楼niwalker()回复于 2002-03-25 00:54:13 得分 0
正是因为你PostBack了啊,你的SelectItem被刷新了
Top
6 楼yunhi()回复于 2002-03-25 10:43:47 得分 0
niwalker() 兄,多谢你的点拨,但是,你可以看一下我的if语句,
if(change_state.SelectedItem.Text=="显示") ,如果DropDownList控件change_state的SelectedItem.Text=="显示"的话执行DataGrid1.Columns[6].Visible=true;否则执行DataGrid1.Columns[6].Visible=false;
我想else也包括SelectItem为null的其它一切条件吧。而且我用if(change_state.SelectedItem.Text==null)试过了还是会出现同样的错误提示“在需要对象实例的地方发现了空值”。到底是怎么搞的?Top
7 楼icyer()回复于 2002-03-25 11:29:12 得分 0
ListItem sItem = change_state.SelectedItem;
if (sItem != null && sItem.Text == "显示")
DataGrid1.Columns[6].Visible = true;
else
DataGrid1.Columns[6].Visible = false;
Top
8 楼yxrj()回复于 2002-03-25 14:33:09 得分 0
SelectedItem.Text==null
当然不行
SelectedItem==null时是不能获取它的Text属性的
Top
9 楼yunhi()回复于 2002-03-25 14:46:50 得分 0
icyer() 你好,用你的办法试了一下,还是会有错误提示“在需要对象实例的地方发现了空值”。如果将“ListItem sItem=change_state.SelectedItem;
”放到Page_Load中虽无错误提示,但也不会有任何效果。why ???Top
10 楼yunhi()回复于 2002-03-26 21:31:30 得分 0
???Top
11 楼yunhi()回复于 2002-03-27 10:31:30 得分 0
???Top
12 楼icyer()回复于 2002-03-27 15:26:03 得分 45
try it:
DropDownList ddl = (DropDownList)sender;
if (ddl == null)
return;
ListItem sItem = ddl.SelectedItem;
if (sItem != null && sItem.Text == "显示")
DataGrid1.Columns[6].Visible = true;
else
DataGrid1.Columns[6].Visible = false;
Top
13 楼TCat(蚊子)回复于 2002-03-27 16:10:32 得分 0
关注:Top
14 楼yunhi()回复于 2002-03-27 22:03:11 得分 0
icyer() 兄的最后一种方法成功通过,thanks!Top
相关问题
- 如何让DataGrid 的EditItemTemplate中的DropDownList控件触发事件?
- 如何触发DataGrid中模板列的dropdownlist的selectedindexchanged事件?
- DataGrid中有dropdownlist控件,如何写这个控件的触发事件?
- 如何触发在一个Datagrid中的自定义列中定义的Dropdownlist?
- DATAGRID中模板列中使用dropdownlist控件,当dropdownlist改变选项时触发的事件怎么写???
- DATAGRID中模板列中使用dropdownlist控件,当dropdownlist改变选项时触发的事件怎么写???
- datagrid <EditItemTemplate>里面绑定DropDownList的问题
- Dropdownlist奇怪的触发事件!!
- dropdownlist为什么不能触发事件?
- 如何触发DropDownList的SelectedIndexChanged事件?




