SQL Server からのデータのリストを表示する親子コントロールである 2 つのドロップダウン リストを使用します。2番目のドロップダウンリストを選択したときにそれを実現したかったのですが、DetailsView には選択した結果が表示されます。データベース名が Database3 であることを選択した場合、DetailsView に database3 からのすべての結果を表示します。いくつかのコーディングを試みましたが、詳細ビューには何も表示されません。助けてください!ここに私のドロップダウンリストコード、
<asp:DropDownList ID="DropDownServerName" runat="server" AutoPostBack="True" DataSourceID="SqlDataSource2" DataTextField="ServerName" DataValueField="ServerName">
</asp:DropDownList>
<asp:SqlDataSource ID="SqlDataSource2" runat="server" ConnectionString="<%$ ConnectionStrings:Database_Shared_NotebookConnectionString %>" SelectCommand="SELECT [ServerName] FROM [tblServer]"></asp:SqlDataSource>
<br />
<br />
<br />
<asp:Label ID="Label10" runat="server" Text="Select Database:"></asp:Label>
<br />
<asp:DropDownList ID="DropDownDatabase" runat="server" AutoPostBack="True" DataSourceID="SqlDataSource3" DataTextField="DatabaseName" DataValueField="DatabaseName" OnSelectedIndexChanged="DropDownDatabase_SelectedIndexChanged">
</asp:DropDownList>
<asp:SqlDataSource ID="SqlDataSource3" runat="server" ConnectionString="<%$ ConnectionStrings:Database_Shared_NotebookConnectionString %>" SelectCommand="SELECT [DatabaseName] FROM [tblDatabase] WHERE [ServerName] = @ServerName">
<SelectParameters>
<asp:ControlParameter ControlID="DropDownServerName" Name="ServerName" PropertyName="SelectedValue" />
</SelectParameters>
</asp:SqlDataSource>
次に、DetailsView では、すべてを調べなければならないので、あまり多くのコードを入れたくありませんが、DetailsView には Update、Delete、および Insert Function がありました。DataSourceID は SQLDataSource1 に付属しており、これはテーブル Database から BoundField されます。SQLDataSource1 の SelectCommand で、次のように入力します。
SelectCommand="SELECT * FROM [tblDatabase] WHERE [DatabaseName] = @DatabaseName"
次に、選択したドロップダウン リストから SQLDataSource1 に SelectParameter を追加します。
<SelectParameters>
<asp:ControlParameter ControlID="DropDownDatabase" Name="DatabaseName" PropertyName="SelectedValue" />
</SelectParameters