我一直在努力寻找一个简单的例子或指导我的问题。基本上我有一个数据集。这个表有三列,
我想将这个DataTable绑定到一个AspxGridView。但是,我希望将最后一列绑定到AspxComboBox,以便:
我怎样才能做到这一点?我发现的许多示例都谈到了AspxGridView处于编辑模式。重点是我实际上不是在编辑网格。我所要做的就是在ComboBox更改上做一个回发,以执行一些操作。
发布于 2012-12-07 09:51:18
网格显示(非编辑)模式下的可编辑组合框:
<dx:GridViewDataColumn>
<DataItemTemplate>
<dx:ASPxComboBox runat="server" AutoPostBack="True" ...></dx:ASPxComboBox>
</DataItemTemplate>
</dx:GridViewDataColumn>ASPxEdit.AutoPostBack
GridViewDataColumn.DataItemTemplate
发布于 2012-12-07 10:02:59
只需通过SelectedValue属性dropdownList绑定即可。检查以下样品
Aspx
<asp:GridView ID="gvTest" runat="server" AutoGenerateColumns="False"
onrowdatabound="gvTest_RowDataBound">
<Columns>
<asp:TemplateField HeaderText="Serial No."><ItemTemplate><%# Container.DataItemIndex+1 %></ItemTemplate></asp:TemplateField>
<asp:TemplateField HeaderText="Fruits" ><ItemTemplate><asp:DropDownList runat="server" ID="ddlFruits" SelectedValue='<%# Bind("FruitID") %>' >
<asp:ListItem Value="1">Apples</asp:ListItem>
<asp:ListItem Value="2">Pineapples</asp:ListItem>
<asp:ListItem Value="3">Banana</asp:ListItem>
</asp:DropDownList></ItemTemplate> </asp:TemplateField>
</Columns>
</asp:GridView>C#
protected void Page_Load(object sender, EventArgs e)
{
gvTest.DataSource = GetData();
gvTest.DataBind();
}
private DataTable GetData()
{
DataTable dt = new DataTable();
dt.Columns.Add(new DataColumn("FruitID"));
for (int i = 0; i < 3; i++)
{
DataRow dr=dt.NewRow();
dr["FruitID"] = i + 1;
dt.Rows.Add(dr);
}
return dt;
}https://stackoverflow.com/questions/13758889
复制相似问题