关闭

数据控件(GridView)使用模板列响应子控件(dropdownlist)事件

1710人阅读 评论(0) 收藏 举报
换了一个东家后,终于可以在上班时,偷偷发布一下BLOG文章了。转正题:
通常在数据控件(比如:datagird,gridview)里使用模板列,并向模板列里添加子控件(如:dropdownlist,checkbox...),是很常见的事情,有时候我们会需要直接使用到子控件自带的事件来处理问题,若干年前,刚接触.NET的时候,对这样的处理还不太了解,也没查到太多资料来处理这类问题,通常都是使用foreach循环数据控件的rows,用FindControl方式获得每个模板列里的子控件的值。如果需要知道某一行里某一个子控件的值,就不太好处理了。现在接触.NET 久了,大概也掌握了解决这类问题的方法,如下:

.aspx代码:(部分)
----------------------------------------
 <div>
     <asp:GridView ID="GridView" runat="server" AutoGenerateColumns="False" OnRowDataBound="GridView_RowDataBound" OnRowUpdating="GridView_RowUpdating">
         <Columns>
             <asp:TemplateField HeaderText="abc">
                 <ItemTemplate>
                     <asp:DropDownList ID="DropDownList1" runat="server" AutoPostBack="True" OnSelectedIndexChanged="DropDownList1_SelectedIndexChanged">
                         <asp:ListItem Value="1">a</asp:ListItem>
                         <asp:ListItem Value="2">b</asp:ListItem>
                         <asp:ListItem Value="3">c</asp:ListItem>
                     </asp:DropDownList>
                 </ItemTemplate>
             </asp:TemplateField>
             <asp:BoundField DataField="TreeNodeName" HeaderText="名字" SortExpression="TreeNodeName" />
         </Columns>
     </asp:GridView>
     </div>
这段代码里就是一个GridView的模板列里有一个DropDownList
.aspx.cs代码(部分)
-----------------------------------------------------------------------
protected void DropDownList1_SelectedIndexChanged(object sender, EventArgs e)
    {
        DropDownList da = (DropDownList)sender;
       //得到DropDownList 选中的值
        string abc = da.SelectedValue;
        System.Web.UI.WebControls.GridViewRow dvr = (System.Web.UI.WebControls.GridViewRow)da.NamingContainer;
       //得到选中DropDownList 所在行的某字段值
        string bbbc = dvr.Cells[1].Text;
        //DropDownList db = (DropDownList)dvr.FindControl("DropDownList1");
        //db.SelectedIndex = da.SelectedIndex;
    }
DropDownList 的选中后的响应事件。
0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:11666次
    • 积分:177
    • 等级:
    • 排名:千里之外
    • 原创:6篇
    • 转载:0篇
    • 译文:0篇
    • 评论:0条