我有一个下拉菜单和一个gridview。SQL数据源selectedvalue参数错误
GridView的数据源是依赖于dropdown.SelectedValue
下拉:
<asp:DropDownList ID="DropDownListLoggedInUser" runat="server" autopostback="True"
DataSourceID="SqlDataSource3" DataTextField="Medarbejder"
DataValueField="Medarbejder"
onload="DropDownListLoggedInUser_Load">
</asp:DropDownList>
它的数据源:
<asp:SqlDataSource ID="SqlDataSource3" runat="server"
ConnectionString="<%$ ConnectionStrings:EGWebtidConnectionString %>"
SelectCommand="SELECT [Medarbejder] FROM [Sager] WHERE ([Medarbejder] IS NOT NULL)">
</asp:SqlDataSource>
GridView控件:
<asp:GridView ID="GridViewSagsoversigt" runat="server" CellPadding="4" ForeColor="#333333"
GridLines="None" Style="text-align: left" AutoGenerateColumns="False" DataSourceID="SqlDataSource1"
OnPreRender="GridViewSagsoversigt_PreRender" DataKeyNames="Sagsnr" EnablePersistedSelection="True"
SelectedIndex="0" OnSelectedIndexChanged="GridViewSagsoversigt_SelectedIndexChanged">
其d atasource:
<asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:EGWebtidConnectionString %>"
SelectCommand="SELECT Sagsnr, Arbejskort, Adresse, Postnr, [By], Beskrivelse, Bemaerkning, Ansvarlig, Medarbejder FROM Sager WHERE ([Medarbejder] LIKE '%' + @Medarbejder + '%')">
<SelectParameters>
<asp:ControlParameter ControlID="DropDownListLoggedInUser" Name="Medarbejder"
PropertyName="SelectedValue" Type="String" />
</SelectParameters>
</asp:SqlDataSource>
当页面加载。在Dropdown完全加载并设置SelectedValue
之前,Gridview要求Dropdown.SelectedValue
。所以SelectedValue
返回""
和Gridview什么也没有显示。
当我点击下拉菜单并选择一个名称时,它会进行回发,并且它都按计划运行。
那么我怎么能确定,下拉加载第一次和gridview加载第二?
我怎么知道什么时候下拉完全加载和的SelectedValue不为空了吗? – CasperT 2011-01-27 14:10:11
dropdown_load是不够的。我刚测试过。 selectedValue在这一点仍然是空的 – CasperT 2011-01-27 14:16:18