C# と VB.NET の質問掲示板

わんくま同盟

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト


(過去ログ 34 を表示中)
■17281 / )  GridViewの内容をDropDownListから絞り込む
□投稿者/ nk (1回)-(2008/04/21(Mon) 17:03:47)

分類:[ASP.NET (VB)] 

2008/04/21(Mon) 19:11:43 編集(投稿者)
今までは並べ替えでなんとか対処してきましたが、
データ量が増えるにつれ絞込み機能が欲しくなってきました。

GridViewの内容を、DropDownListで指定したユーザ名によって絞込む
(実際に絞り込むのは対応しているユーザID)
というものを作りたいと思っています。

http://jsajax.com/aspGridView/Toc.aspx
こちらの「DropDownListと連動」を参考に試みましたが、
何故かGridViewが表示されないという事態に。


若干簡素化しましたが、以下ソースです。

<asp:Content ID="Content1" ContentPlaceHolderID="ContentPlaceHolder1" Runat="Server">
    <table>
        <tr>
            <td><span>ファイル一覧</span>
            </td>
        </tr>
        <tr>
			<td>
                    <asp:DropDownList ID="DropDownList1" runat="server" AppendDataBoundItems="True"
                        AutoPostBack="True" DataSourceID="SqlDataSource1" DataTextField="UserName"
                        DataValueField="UserId">
                        <asp:ListItem>ユーザIDで絞込み</asp:ListItem>
                    </asp:DropDownList>
                    <asp:SqlDataSource ID="SqlDataSource1" runat="server"
                        ConnectionString="<%$ ConnectionStrings:LSStest %>"
                        OldValuesParameterFormatString="original_{0}" SelectCommand="SELECT UserId, UserName FROM aspnet_Users" ProviderName="System.Data.SqlClient">
                    </asp:SqlDataSource>
                    <br />
                    <asp:GridView ID="GridView1" runat="server" AllowPaging="True"
                        AutoGenerateColumns="False" DataKeyNames="管理No." DataSourceID="SqlDataSource2">
                        <Columns>
                            <asp:BoundField DataField="管理No." HeaderText="管理No." ReadOnly="True" SortExpression="管理No." />
                            <asp:BoundField DataField="UserId" HeaderText="UserId" SortExpression="UserId" />
                            <asp:BoundField DataField="ファイル名" HeaderText="ファイル名" SortExpression="ファイル名" />
                            <asp:BoundField DataField="コメント" HeaderText="コメント" SortExpression="コメント" />
                        </Columns>
                    </asp:GridView>
                    <asp:SqlDataSource ID="SqlDataSource2" runat="server" ConnectionString="<%$ ConnectionStrings:LSStest %>"
                        ProviderName="System.Data.SqlClient" SelectCommand="SELECT [管理No.], [UserId], [ファイル名],[コメント]FROM [ファイル管理] WHERE ([UserId] = @UserId)">
                        <SelectParameters>
                            <asp:ControlParameter ControlID="DropDownList1" Name="UserId" PropertyName="SelectedValue" Type="Object" />
                        </SelectParameters>
                    </asp:SqlDataSource>
			</td>
        </tr>
    </table>
</asp:Content>


何かお気づきの方は一言いただけますか。
ちなみに、UserIdはuniqueidentifierです。

※一部ソース訂正しました。


返信 編集キー/


管理者用

- Child Tree -