0
我想從後面的代碼訪問下拉列表中的值,但我得到此錯誤:「ddl_Ext在當前上下文中不存在」。我不知道我在這裏做錯了什麼。有人可以幫忙嗎?這是我在aspx文件中的下拉列表。謝謝。如何添加下拉列表detailview asp.net
<asp:TemplateField HeaderText="Is this external?">
<ItemTemplate>
<asp:Label ID="lblExt" runat="server" Text='<%# DataBinder.Eval(Container, "DataItem.Ext") %>'></asp:Label>
</ItemTemplate>
<EditItemTemplate>
<asp:DropDownList ID="ddl_Ext" runat="server"
AutoPostBack="false" AppendDataBoundItems="true">
<asp:ListItem Text="Please select ..." Value="Please Select ..."></asp:ListItem>
<asp:ListItem Text="Yes" Value="Yes"></asp:ListItem>
<asp:ListItem Text="No" Value="No"></asp:ListItem>
</asp:DropDownList>
</EditItemTemplate>
</asp:TemplateField>
這裏是後面我將嘗試使用代碼:
protected void DV_WScript_ItemInserting(object sender, DetailsViewInsertEventArgs e)
{
string Ext = ddl_Ext.SelectedValue;
}
從代碼隱藏你在哪裏嘗試訪問它? –
您需要找到控件並將其轉換爲'DropDownList dropDown =(DropDownList)DetailsView1.FindControl(「ddlName」);' –
這是因爲它位於'TemplateField'的EditItemTemplate中。你需要通過'Rows [{index}]。FindControl(「ddl_Ext」)'來訪問它。 –