【发布时间】:2014-06-14 18:46:35
【问题描述】:
我尝试根据DropDownList的值过滤我的gridview的内容。我设法用 DropDownList 过滤了我的 gridview,但是如何用多个 DropDownList 过滤?
这是我的 aspx 代码:
<asp:SqlDataSource ID="SqlDataSourceName" runat="server" ConnectionString="<%$ ConnectionStrings:connexionBase %>"
SelectCommand="SELECT DISTINCT nom FROM Utilisateur"></asp:SqlDataSource>
<asp:SqlDataSource ID="SqlDataSourceEntite" runat="server" ConnectionString="<%$ ConnectionStrings:connexionBase %>"
SelectCommand="SELECT DISTINCT entite FROM Utilisateur"></asp:SqlDataSource>
<div style="height: 350px; width: 100%; overflow: auto;">
<asp:GridView ID="GridView1" Width="100%" Height="100%" HeaderStyle-BackColor="#21e3f0"
HeaderStyle-ForeColor="White" runat="server" AutoGenerateColumns="false" DataSourceID="GridDataSource"
ShowHeader="true">
<Columns>
<asp:BoundField DataField="Nom" HeaderText="Nom" ItemStyle-Width="80" />
<asp:BoundField DataField="Objectif operationnel" HeaderText="Objectif Opérationnel"
ItemStyle-Width="150" />
<asp:BoundField DataField="Description activite" HeaderText="Description activité"
ItemStyle-Width="80" />
<asp:BoundField DataField="Entite" HeaderText="Entité" ItemStyle-Width="80" />
<asp:BoundField DataField="Debut" HeaderText="Début" ItemStyle-Width="30" />
<asp:BoundField DataField="Fin" HeaderText="Fin" ItemStyle-Width="30" />
<asp:BoundField DataField="Cle" HeaderText="Clé" ItemStyle-Width="30" />
<asp:BoundField DataField="MAP" HeaderText="Map" ItemStyle-Width="30" />
<asp:BoundField DataField="SNS" HeaderText="SNS" ItemStyle-Width="30" />
</Columns>
</asp:GridView>
</div>
<!-- SQL DataSource avec un filterExpression pour filter le tableau selon la valeur des ListBox choisi-->
<asp:SqlDataSource ID="GridDataSource" runat="server" ConnectionString="<%$ ConnectionStrings:connexionBase %>"
SelectCommand="SELECT [Nom], [Objectif operationnel], [Description activite], [Entite], [Debut], [Fin], [Cle], [MAP], [SNS] FROM reponse"
FilterExpression="Nom = '{0}'">
<FilterParameters>
<asp:ControlParameter Name="Nom" ControlID="NomPersonne" PropertyName="SelectedValue"
ConvertEmptyStringToNull="false" />
<asp:ControlParameter Name="Nom" ControlID="NomEntite" PropertyName="SelectedValue"
ConvertEmptyStringToNull="false" />
</FilterParameters>
</asp:SqlDataSource>
编辑:我的 DropDownList 控件(由用户选择值以过滤 gridview)
<asp:DropDownList ID="NomPersonne" runat="server" AutoPostBack="True" DataSourceID="SqlDataSourceName"
DataTextField="nom" DataValueField="nom" AppendDataBoundItems="true" CssClass="DropDownList">
<asp:ListItem Text="" Value="" />
</asp:DropDownList>
<asp:DropDownList ID="NomEntite" runat="server" AutoPostBack="True" DataSourceID="SqlDataSourceEntite"
DataTextField="entite" DataValueField="entite" AppendDataBoundItems="true" CssClass="DropDownList">
<asp:ListItem></asp:ListItem>
</asp:DropDownList>
【问题讨论】:
-
您的下拉列表在哪里?
-
我在第一篇文章中更新了我的代码