首页 新闻 搜索 专区 学院

asp.net 找不到控件

0
悬赏园豆:20 [已解决问题] 解决于 2009-02-19 12:09

在.aspx中

<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" Width="295px">
<Columns>
<asp:TemplateField HeaderText="状态">
<ItemTemplate>
<asp:DropDownList runat="server" DataValueField="state" ID="DropDownList1"></asp:DropDownList>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>

在.aspx.cs中

DropDownList myDropDownList = (DropDownList)this.GridView1.FindControl("DropDownList1");

myDropDownList 值一直为null

在智能提示中也找不到DropDownList1

湖的主页 | 初学一级 | 园豆:0
提问于:2009-02-18 17:11
< >
分享
最佳答案
0

因为GridView是一个数据绑定控件,在给他数据之后,他会生成很多行,所以如果你直接访问DropDownList1的话,你认为你拿到的是哪一行的这个DropDownList呢?这样显然是不行的,你应该在ItemDataBound事件的处理中再使用FindControl方法去寻找

Gray Zhang | 专家六级 |园豆:17610 | 2009-02-18 18:16
其他回答(3)
0

请写的具体点,你想实现什么功能??

子夜星辰 | 园豆:1613 (小虾三级) | 2009-02-18 17:34
0

应该要找到GIRDVIEW。ITEM然后再去FindControl

仁面寿星 | 园豆:325 (菜鸟二级) | 2009-02-18 18:37
0

Gray Zhang说的

canbeing | 园豆:1287 (小虾三级) | 2009-02-18 20:53
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册