【问题标题】:Updating Grid View from List Box从列表框更新网格视图
【发布时间】:2012-06-18 01:45:44
【问题描述】:

我有一个这样的列表框,

<asp:ListBox ID="ListBox1" runat="server" Height="175px" Width="213px">
            <asp:ListItem Value="all">All</asp:ListItem>
            <asp:ListItem Value="programmer">Computer Programmer</asp:ListItem>
            <asp:ListItem Value="itss">Information Technologies Support Services</asp:ListItem>
            <asp:ListItem Value="analyst">Systems Analyst</asp:ListItem>
        </asp:ListBox>

还有这样的网格视图,

<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" 
            DataSourceID="XmlDataSource1">
            <Columns>
                <asp:BoundField DataField="name" HeaderText="Name" SortExpression="name" />
                <asp:BoundField DataField="program" HeaderText="Program" 
                    SortExpression="program" />
            </Columns>
        </asp:GridView>
        <asp:XmlDataSource ID="XmlDataSource1" runat="server" DataFile="~/XMLFile.xml" 
            TransformFile="~/XSLTFile.xslt"></asp:XmlDataSource>

网格视图正在从 XML 和 XSLT 文件中获取值。我想要做的是,当用户从列表框中选择假设计算机程序员时,网格视图应该更新只有那些有这个程序的结果。我怎样才能做到这一点?我必须将xml与列表框绑定吗?

【问题讨论】:

标签: asp.net xml vb.net webforms


【解决方案1】:

您需要做的是根据在ListBox 中选择的内容过滤您的DataSourceGridView

ListBox1 的选定索引更改时,触发事件并使用AutoPostBack 属性并根据选定的值过滤XMLDataSource

Protected Sub ListBox1_SelectedIndexChanged(sender As Object, e As EventArgs) Handles ListBox1.SelectedIndexChanged
    Dim selected As String = ListBox1.SelectedValue
    FilterDataSource(selected)
End Sub

''' <summary>
''' Depending on the selected value passed in, filter the XMLDataSource
''' by the selected value
''' </summary>
''' <param name="selected">The value of the selected item in ListBox1</param>
''' <remarks></remarks>
Private Sub FilterDataSource(ByVal selected As String)
    ' Do whatever logic applies that will filter the XMLDataSource
    Select Case selected

        Case "all"

        Case "progammer"

        Case "itss"

        Case "analyst"

    End Select
End Sub

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-04-29
    • 1970-01-01
    • 2017-04-27
    • 2018-05-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多