在我的表格上,我有一个包含员工姓名的下拉列表。我有一个绑定到下拉列表的数据源,所以当你打开表单时,用户会自动填写。在下拉列表上方我有链接按钮(AZ)onClick他们应该通过另一个数据源过滤在下拉列表中按字母和输出过滤的sp。我知道onClick正在激活,但下拉列表没有被新数据填充。任何建议或帮助将不胜感激。 每个linkButton x26的代码
<asp:LinkButton ID="LinkA" runat="server" CausesValidation="False"
Font-Size="Small" ForeColor="#0B446A" Text="A" Font-Underline="True"
OnClick="link_click" Font-Bold="True"></asp:LinkButton>
背后的代码
Protected Sub link_click(ByVal sender As Object, _
ByVal e As System.EventArgs)
ColorReset()
Dim link As LinkButton = sender
Session("filterletter") = link.Text
Session("linkclick") = "yes"
End Sub
Datasource1
<asp:SqlDataSource ID="SqlDataSource3" runat="server"
ConnectionString="<%$ ConnectionStrings:RequestSystemConnectionString %>"
SelectCommand="userinfo" SelectCommandType="StoredProcedure">
<SelectParameters>
<asp:SessionParameter Name="user" SessionField="user" Type="Int32" />
</SelectParameters>
</asp:SqlDataSource>
Datasource2
ConnectionString="<%$ ConnectionStrings:RequestSystemConnectionString %>" SelectCommand="current_employees_byletter"
SelectCommandType="StoredProcedure" >
<SelectParameters>
<asp:SessionParameter Name="letter" SessionField="filterletter" Type="String" />
</SelectParameters>
</asp:SqlDataSource>
数据源1代码
If Page.IsPostBack = False Then
Dim dv As New DataView
dv = SqlDataSource1.Select(DataSourceSelectArguments.Empty)
DropDownList1.SelectedValue = Trim(dv.Item(0).Item(“userid”)。ToString) TextBox1.Text = DropDownList1.SelectedValue.ToString
答案 0 :(得分:0)
经过几个小时的尝试,我想出了如何将下拉列表连接到不同的数据源。感谢所有观看和评论过的人。最终,我为preRenderComplete中的每个数据源创建了数据视图。
答案 1 :(得分:0)
您应该只能在链接点击事件中更改DropDownList的数据源目标:
Protected Sub link_click(ByVal sender As Object, ByVal e As System.EventArgs)
ColorReset()
Dim link As LinkButton = sender
Session("filterletter") = link.Text
Session("linkclick") = "yes"
' Update the "DataSourceID" field to be the ID of your other datasource
DropDownList1.DataSourceID = dsEmpByLetter
End Sub
注意:如果您尚未完成,则应将DropDownList的“DataTextField”和“DataValuefield”属性设置为数据源中相应的列名。