【问题标题】:Filtering Grid in Visual Studio 2010 Using ListBox在 Visual Studio 2010 中使用 ListBox 过滤网格
【发布时间】:2011-06-23 14:59:48
【问题描述】:

我正在 VS 2010 中构建一个数据库驱动的 Web 应用程序,并且我有一个在 GridView 中显示我的数据的页面。我希望能够根据“类型”(我的列之一的名称)过滤结果。

我添加了一个 ListBox,其条目是通过我的数据库中的 EntityDataSource 填充的,并且我在 Multiple 上设置了 AutoPostBack 和 SelectionMode。然后,我的 GridView 使用以下代码进行填充:

<asp:EntityDataSource ID="EntityDataSource2" runat="server" 
    AutoGenerateWhereClause="True" ConnectionString="name=ABCCandidatesEntities" 
    DefaultContainerName="ABCCandidatesEntities" EnableFlattening="False" 
    EntitySetName="Candidates" EntityTypeFilter="Candidate" Where="">
        <WhereParameters>
            <asp:ControlParameter ControlID="ListBox1" Name="Type" 
                PropertyName="SelectedValue" />
        </WhereParameters>
</asp:EntityDataSource>

虽然如果只选择了 ListBox 中的 one 项,这可以正常工作,但如果 multiple 是,则它不起作用 - 它只是将其视为单个选择。我怎样才能让它工作?

在网站说明中,是否有更简单的方法来设置 GridView 的过滤?

谢谢!

【问题讨论】:

    标签: asp.net visual-studio


    【解决方案1】:

    如果您查看智能,它会显示.SelectedValue 返回一个字符串。 .GetSelectedIndices() 是唯一一个从我所看到的返回所有选定值的成员,但是因为它是一种方法而不是属性,所以不确定您应该如何绑定到它。

    据我所知,这是列表框的限制。要获得您正在寻找的功能,您需要编写一些代码隐藏和/或 javascript 来提取查询的值。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-08-01
      • 1970-01-01
      • 2011-12-11
      • 2010-12-03
      • 2011-10-23
      • 1970-01-01
      相关资源
      最近更新 更多