1

現在、C# を使用して Web ページを開発しています。DropdownListSQL データベースのデータにバインドされたデータがあります。ドロップダウンリストがデータベースにバインドされた後、ドロップダウンリスト内の項目は userA、userB、および userC になります。ドロップダウンリスト内の項目のいずれかを選択すると、特定のユーザーのデータがグリッドビューに表示されます。

だから、私が今やろうとしているのは、ドロップダウンリストにALLを追加したいということです。ALLをクリックすると、各ユーザーのデータがグリッドビューに表示されます。どうすればそれを達成できますか?何かアドバイス?ありがとう。

P/S: すべてのユーザー データを表示するために余分なボタンを追加したくありません。ドロップダウンリストに入れたい。

これは私のコードです:

WebApp.aspx:

<asp:DropDownList ID="DropDownList1" runat="server" 
        DataSourceID="SqlDataSource1" DataTextField="Username" 
        DataValueField="Username">
</asp:DropDownList>
<asp:SqlDataSource ID="SqlDataSource1" runat="server" 
        ConnectionString="<%$ ConnectionStrings:DBConnectionString %>" 
        SelectCommand="SELECT [Username] FROM [Accounts]">
</asp:SqlDataSource>

これは、新しい Web ページ用に編集したものです。コード ビハインドではデータ バインディング関数を呼び出しません。

助けてくれてありがとう。

これが私が探している答えです:

<asp:DropDownList ID="DropDownList1" runat="server" 
        DataSourceID="SqlDataSource1" DataTextField="Username" 
        DataValueField="Username" AppendDataBoundItems="True">
    <asp:ListItem Text="All" Value ="all" Selected="True"></asp:ListItem>
</asp:DropDownList>
<asp:SqlDataSource ID="SqlDataSource1" runat="server" 
        ConnectionString="<%$ ConnectionStrings:DBConnectionString %>" 
        SelectCommand="SELECT [Username] FROM [Accounts]">
</asp:SqlDataSource>

私を助けようとしてくれているすべての人に感謝します。

4

2 に答える 2

2

これを達成できます:

DropdownListを SQL データとバインドした後に、このコードを使用します。

ddlUsers.Items.Add(new ListItem("All", "all"));
ddlUsers.SelectedValue = "all";

これが完了したら、次の条件に基づいてすべてのユーザー クエリを選択できます。

if(ddlUsers.SelectedValue == "all")
{
   // your SQL query to select all users goes here.
}

HTML マークアップでは、次のように追加できます。

<asp:DropDownList ID="DropDownList1" runat="server" 
        DataSourceID="SqlDataSource1" DataTextField="Username" 
        DataValueField="Username">

<asp:ListItem Text="All" Value ="all" Selected="True"></asp:ListItem>

</asp:DropDownList>

Selected="True"これをデフォルトで選択したくない場合は、削除できます。

于 2012-12-14T06:47:10.467 に答える
0

これを達成するためにできることはいくつかあります。

1)ddlUsers.Items.Add(新しい ListItem("すべて", "すべて")); ドロップダウン リストをバインドする場所にこの行を追加します。

2)SelectedIndexChangedドロップダウンのイベントを使用...

protected void ddlUsers_SelectedIndexChanged(object sender, EventArgs e)
 {
if(ddlUsers.SelectedValue == "all")
{
  //Call your SQL query from here and bind the result set with your grid.
  //if you need the id's of all the items in the drop down then write a loop and form a      //string with , separated valued and pass it along.
}

} 
于 2012-12-14T07:00:56.427 に答える