C# 如何从ListView中的DropDownList中获取值?
我在ListView中有一个DropDownList。。 我想在单击命令时获取数据。 这是我的密码C# 如何从ListView中的DropDownList中获取值?,c#,asp.net,listview,C#,Asp.net,Listview,我在ListView中有一个DropDownList。。 我想在单击命令时获取数据。 这是我的密码 protected void ListView2_ItemCommand(object sender, ListViewCommandEventArgs e){ string shipmethod = ((DropDownList)e.Item.FindControl("ShippingComapnyDDL")).SelectedValue; } 但它总是返回空值。。 我用谷歌搜索了大约3个
protected void ListView2_ItemCommand(object sender, ListViewCommandEventArgs e){
string shipmethod = ((DropDownList)e.Item.FindControl("ShippingComapnyDDL")).SelectedValue;
}
但它总是返回空值。。
我用谷歌搜索了大约3个小时,并尝试了很多功能。。
但是仍然不能解决这个错误
请帮帮我,伙计们
更新
这是我的aspx页面
<asp:DropDownList ID="ShippingComapnyDDL" runat="server" SelectedValue='<%# Eval("ShippingCompany") %>'>
<asp:ListItem Text="" Value=""></asp:ListItem>
<asp:ListItem Text="FedEx" Value="FedEx"></asp:ListItem>
<asp:ListItem Text="UPS" Value="UPS"></asp:ListItem>
<asp:ListItem Text="Other" Value="Other"></asp:ListItem>
</asp:DropDownList>
你设置了标题吗?试试看
if(e.Item.ItemIndex!=-1)
{
string shipmethod = ((DropDownList)e.Item.FindControl("ShippingComapnyDDL")).SelectedValue;
}
if not working then try
string shipmethod = (e.Item.FindControl("ShippingComapnyDDL") as DropDownList).SelectedValue;
试试这个:
DropDownList ddl = (DropDownList)e.Item.FindControl("ShippingComapnyDDL");
if (ddl != null)
{
//code here
}
请试一试
<%#DataBinder.Eval(Container.DataItem,"ShippingCompany")%>
而不是
<%#Eval("ShippingCompany")%>
有关详细信息:
可能是因为你拼错了Company.这只是魔力字符串不好的另一个原因:-你确定listview在postback@DorCohen不,它来自我的DDL ID。它是从第一个拼错的,太懒了,无法修复…@ViSu我在同一个listview上有textbox控件,但是它可以检索到一个值runat应该设置为sever我想应该已经设置了,否则可能会出现编译错误。请尝试将autopostback设置为true