数据绑定列表项我有一个下拉列表中一个DetailsView的EditItemTemplate中被使用,并且它正在从一个SqlDataSource填充,而我如下结合所选值:启用在DropDownList中
<EditItemTemplate>
<asp:DropDownList ID="lstLocations" runat="server"
DataSourceID="sqlMDALocationsAll" DataTextField="loc_name" DataValueField="id"
SelectedValue='<%# Bind("staff_location_id") %>' AppendDataBoundItems="True" >
<asp:ListItem Value="">(Unknown)</asp:ListItem>
</asp:DropDownList>
</EditItemTemplate>
所有按预期工作。现在我想要做的只是基于sqlDataSource中的另一列启用那些绑定列表项 - 有一个“状态”列可以有活动或非活动的值 - 如果条目的状态是活动的,那么我希望启用相应的列表项,否则我希望它被禁用。原因是由于这是一个编辑表单,我不希望人们能够选择一个非活动的值,但我需要在下拉列表中包含这些“非活动”条目,因为主条目是正在编辑可能有一个位置ID现在不活动的位置。
我试图用在以下atted到DropDownList的定义:
Enabled='<%# Eval("status") = "active" %>'
但没有工作 - 但有没有报告任何错误。
有什么建议吗?
感谢
感谢您的信息 - 它并没有真正帮助,我想我设法与具有涉及两个数据源混淆自己 - 一个细节来看,和其他来填充下拉列表中的列表项的成员。 我需要解决的是如何以某种方式为从数据源添加到下拉列表中的每个列表项捕获一个“onDataBound”。但是onDataBinding事件似乎没有公开我需要的值。 – 2009-10-05 16:33:09
您仍然可以通过附加事件处理程序来执行数据采集任务,将detailsview中的下拉列表视为常规控件。 – 2009-10-06 01:03:32