Tod*_*ddN 1 asp.net gridview sqldatasource
我正在尝试对单个数据列执行单个搜索asp:GridView,但是我希望每个列上方有多个过滤器(搜索)框,以便可以在自己的透视列中进行搜索.理论上明确解决这个问题的方法就是拥有多个FilterExpressions.我正在使用VB而且非常新,很容易被VB误解,请使用:
PS.当只有一个过滤器(搜索)框时,我已经让它工作没问题,这当前没有做任何事情
<asp:SqlDataSource ID="SqlDataSource1" runat="server"
ConnectionString="xxx"
ProviderName="xxxx"
SelectCommand="SELECT [ddiID], [volusionID], [Customer], [email], [Total], [SumOfTotal] FROM [BBnewsalesQry] ORDER BY [Customer]"
FilterExpression="customer like '%{0}%' OR ddiID like '%{0}%'">
<FilterParameters>
<asp:ControlParameter Name="ddiID" ControlID="ddiIDSearch" PropertyName="Text" />
<asp:ControlParameter Name="customer" ControlID="txtSearch" PropertyName="Text" />
</FilterParameters>
</asp:SqlDataSource>
<div>
<b>DDI Search:</b> <asp:TextBox ID="ddiIDSearch" runat="server" />
<b>Customer Search:</b> <asp:TextBox ID="txtSearch" runat="server" />
<asp:ImageButton ID="btnSearch" ImageUrl="http:xxx" runat="server" />
<asp:ImageButton ID="btnClear" ImageUrl="http:xxx" runat="server" />
</div>
Run Code Online (Sandbox Code Playgroud)
然后在GridView内部:
<asp:TemplateField HeaderText="ddiID" SortExpression="ddiID">
<ItemStyle HorizontalAlign="Left" />
<ItemTemplate>
<asp:Label ID="lblddiid" Text='<%#HighlightText(Eval("ddiid")) %>'
CssClass="TextField" runat="server" />
</ItemTemplate>
</asp:TemplateField>
<asp:BoundField DataField="volusionID" HeaderText="volusionID" ReadOnly="True" SortExpression="volusionID" />
<asp:TemplateField HeaderText="customer" SortExpression="customer">
<ItemStyle HorizontalAlign="Left" />
<ItemTemplate>
<asp:Label ID="lblcustomer" Text='<%#HighlightText(Eval("customer")) %>'
CssClass="TextField" runat="server" />
</ItemTemplate>
</asp:TemplateField>
Run Code Online (Sandbox Code Playgroud)
小智 6
您正在引用相同的参数两次 - 请尝试以下操作:
FilterExpression="customer like '%{0}%' OR ddiID like '%{1}%'"
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
14481 次 |
| 最近记录: |