【问题标题】:Gridview Binding DropDownList from code behindGridview Binding DropDownList 从后面的代码
【发布时间】:2011-02-27 21:02:09
【问题描述】:

我需要将网格视图与复选框列、下拉列和文本框绑定。就像默认模式是编辑一样。请帮我从后面的代码中绑定组合框项。组合框值需要从 Web 服务中获取。所有来自后面代码的网格数据绑定。用户可以更改网格上的数据。

  <asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False">
        <Columns>
        <asp:TemplateField >
                <ItemTemplate >
                    <asp:CheckBox ID="CheckBox1" runat="server" Checked= "<%# Bind('select') %>" />
                </ItemTemplate>
            </asp:TemplateField>
            <asp:TemplateField HeaderText="Roles">
                <ItemTemplate>
                    <asp:DropDownList ID="DropDownList1" runat="server" 
                        SelectedValue='<%# Eval("Roles") %>'>
                    </asp:DropDownList>
                </ItemTemplate>
            </asp:TemplateField>
            <asp:TemplateField HeaderText="Name">
                <ItemTemplate>
                    <asp:TextBox ID="TextBox1" runat="server" Text="<%# Bind('Name') %>"></asp:TextBox>
                </ItemTemplate>
            </asp:TemplateField>
        </Columns>
    </asp:GridView>

后面的代码

 protected void Page_Load(object sender, EventArgs e)
{

    DataTable table = new DataTable();
    table.Columns.Add("select", typeof(bool));
    table.Columns.Add("Roles", typeof(string));
    table.Columns.Add("Name", typeof(string));
    table.Rows.Add(true, "Admin", "name1" );
    table.Rows.Add(true, "Admin", "name2");
    table.Rows.Add(true, "user", "name3");
    table.Rows.Add(false, "user", "name4");
    table.Rows.Add(false, "Admin", "name5");
    GridView1.DataSource = table;
    GridView1.DataBind();

}

【问题讨论】:

    标签: c# asp.net data-binding gridview


    【解决方案1】:

    你可以试试这样的。

    <asp:DropDownList ID="DropDownList1" runat="server" 
    OnDataBound="DropDownList_OnDataBound"></asp:DropDownList>
    

    和

    protected void DropDownList_OnDataBound(object sender, EventArgs e)
    
    {
       DropDownList ddl = sender as DropDownList;
       if(ddl != null)
       {
            // call web service and 
            // populate ddl.Items
       }
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-03-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-07-03
      • 2021-01-17
      相关资源
      最近更新 更多