DropDownList控件取值问题 10

在.net中,DropDownList控件放在普通页面里,使用没问题,可是,如果放在DetailsView里,在某些情况下就有问题。该DetailsView使用Linq查... 在.net中,DropDownList控件放在普通页面里,使用没问题,可是,如果放在DetailsView里,在某些情况下就有问题。
该DetailsView使用Linq查询绑定数据,然后,在后台页面也采用Linq查询把一个数据绑到DropDownList的第一项,我试了N种方法,在DropDownList选值并提交页面后,该值总是不正常,要么是“在后台页面绑定的值”,要么就是“空值”,可是,在该页面里,放在DetailsView外面的DropDownList,它选值就很正常。

后台相关赋值代码:
1.这段放在Page_Load里,不管用不用IsPostBack,DropDownList最后取值都不正确(一直是"测试数据"或一直是空值)。
//为DropDownList设置默认选项。
//if (!IsPostBack)
//{
((DropDownList)DetailsView_WebInfo.FindControl("DropDownList_Web_IsOpen")).SelectedItem.Text = "测试数据";
((DropDownList)DetailsView_WebInfo.FindControl("DropDownList_Web_IsOpen")).SelectedItem.Value = "测试数据";
//}

2.Click事件里的相关代码:
//获取DropDownList选值。
string StrWeb_IsOpen = ((DropDownList)DetailsView_WebInfo.FindControl("DropDownList_Web_IsOpen")).SelectedValue;

前台代码:
<%@ Page Language="C#" AutoEventWireup="true" ValidateRequest="false" CodeBehind……
……
<asp:DetailsView ……
……
<asp:DropDownList ID="DropDownList_Web_IsOpen" EnableViewState="true" runat="server">
<asp:ListItem Selected="True"></asp:ListItem>
<asp:ListItem Value="True">开通</asp:ListItem>
<asp:ListItem Value="False">关闭</asp:ListItem>
</asp:DropDownList>
……
</asp:DetailsView>
……

类似的代码,如果不采用Linq查询绑定数据,而是用ADO.Net绑定数据,就没这个问题。谁知道怎么办?谢谢!
展开
 我来答
品茗逗逗网
2014-11-01 · 超过40用户采纳过TA的回答
知道小有建树答主
回答量:123
采纳率:0%
帮助的人:32.8万
展开全部
数据控件 下用其他空间 如果是在后台 则要用findcontrol,既然 楼主用这种方法实现不了 那就用html 标签啊
<select><select > 然后用 onchange 用前台js 写 不就可以么
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式