我有一个详细信息视图,我将特定字段转换为模板,我使用下拉列表。现在我创建了另一个下拉列表来过滤详细信息视图中的那个,但是我收到错误。
数据绑定方法,如Eval(),XPath()和Bind()只能是 在数据绑定控件的上下文中使用。
<InsertItemTemplate>
<asp:DropDownList ID="DropDownList12" runat="server" DataSourceID="ddd"
DataTextField="FullName" DataValueField="Emp_id"
SelectedValue='<%# Bind("Employee_Personal_InfoEmp_id") %>'
AutoPostBack="True">
</asp:DropDownList>
</InsertItemTemplate>
更改数据源的方法,从而启用过滤
Protected Sub Button1_Click(ByVal sender As Object, ByVal e As EventArgs) Handles Button1.Click
Dim ddl5 As DropDownList = DetailsView1.FindControl("DropDownList12")
ddl5.DataSourceID = ""
ddl5.DataSource = FilterDataSource
ddl5.DataBind()
End Sub
如果我起飞
**SelectedValue='<%# Bind("Employee_Personal_InfoEmp_id") %>'**
过滤器可以工作。对此有任何解决方法吗?我需要绑定。感谢
答案 0 :(得分:0)
为了让它以你想要的方式工作,你需要在itemDataBound事件中找到控件,然后创建一个事件处理程序来分配itemdataBound事件中下拉框ctl的地址