在我的ASP.NET页面中,我有一个gridview和一个下拉列表,我希望下拉列表中填充gridview中所选行的值。我的下拉列表中填充了一个sql语句:
dt = dal.FillDataTable(dbType.SqlServer, "SELECT V_VendorNo + ' | ' + V_VendorName FROM VendorTbl")
ddlVendorEncum.DataSource = dt
ddlVendorEncum.DataTextField = dt.Columns.Item(0).ToString
ddlVendorEncum.DataValueField = dt.Columns.Item(0).ToString
ddlVendorEncum.DataBind()
我的gridview模板字段就是这样......
<asp:TemplateField HeaderText="Vendor">
<EditItemTemplate>
<asp:TextBox ID="TextBox1" runat="server" Text='<%# Eval("v_vendorno").ToString + " | " + Eval("v_vendorname").ToString %>'></asp:TextBox>
</EditItemTemplate>
<ItemTemplate>
<asp:Label ID="Label1" runat="server" Text='<%# Eval("v_vendorno").ToString + " | " + Eval("v_vendorname").ToString %>'></asp:Label>
</ItemTemplate>
<ItemStyle Font-Size="X-Small" />
</asp:TemplateField>
我试过这段代码:
ddlVendorEncum.Text = gvEncumbered.SelectedRow.Cells(1).ToString
在我的gridview的selectedIndexChanged事件中,但我一直返回错误(“ddlVendorEncum.Items.Add(gvEncumbered.SelectedRow.Cells(1).ToString()) “)。有什么建议吗?
答案 0 :(得分:1)
使用以下代码可能会删除您的错误:
ListItem item = new ListItem();
item.Text = gvEncumbered.SelectedRow.Cells(1).ToString;
item.Value = gvEncumbered.SelectedRow.Cells(1).ToString;
ddlVendorEncum.Items.Add(item);