当前位置:编程学习 > C#/ASP.NET >>

没有分了,请各位高手帮助!怎么来获得Repeater控件中dropdownlist的值?

我的代码如下:
前台代码:


<asp:Repeater ID="Repeater1" runat="server" 
                OnItemDataBound="Repeater1_ItemDataBound" onitemcommand="Repeater1_ItemCommand">
                <ItemTemplate>
                    <tr>
                        <td>
                            <%# Eval("userId") %>
                        </td>
                        <td>
                            <asp:DropDownList ID="ddlDeps" runat="server">
                            </asp:DropDownList>
                        </td>
                        <td>
                            <asp:LinkButton ID="LinkButton1" CommandArgument ='<%# Eval("userId") %>' CommandName ="pass" 

runat="server">PASS</asp:LinkButton>|<asp:LinkButton
                                ID="LinkButton2" CommandName ="del" CommandArgument ='<%# Eval("userId") %>' runat="server">

删除</asp:LinkButton>
                        </td>
                    </tr>
                </ItemTemplate>
            </asp:Repeater>

后台代码:

 protected void Repeater1_ItemDataBound(object sender, RepeaterItemEventArgs e)  //数据绑定,能正常绑定
    {

        if (e.Item.ItemType == ListItemType.Item||e.Item .ItemType ==ListItemType .AlternatingItem )
        {
            DropDownList d = (DropDownList)e.Item.FindControl("ddlDeps");
            d.DataSource = new depOperate().getAllDep();
            d.DataTextField = "depName";
            d.DataValueField = "depId";
            d.DataBind();
        }

    }
    protected void Repeater1_ItemCommand(object source, RepeaterCommandEventArgs e)
    {
        if (e.CommandName =="pass")
        {
            int userId = Convert.ToInt32(e.CommandArgument.ToString());
            DropDownList d = (DropDownList)e.Item.FindControl("ddlDeps");
            DropDownList d1 = (DropDownList)e.Item.FindControl("ddlUserType");
            int depId = Convert.ToInt32(d.SelectedValue );  //depId的值为什么总是第一个值呢,无论选择哪一个,显示的总是第一个

项目的值
            Response.Write(depId);

           
        }
       
    }

--------------------编程问答-------------------- ddl.SelectedItem.Value --------------------编程问答-------------------- pageload中添加
if(!IsPostBack){} --------------------编程问答-------------------- mark
补充:.NET技术 ,  非技术区
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,