代码之家  ›  专栏  ›  技术社区  ›  Paul Michaels

数据绑定到XML文件

  •  1
  • Paul Michaels  · 技术社区  · 15 年前

    <Levels>
      <Level Code="T" Text="Test">
        <SubLevels>
          <SubLevel Type="9" Text="Nine"/>
          <SubLevel Type="8" Text="Eight"/>
          <SubLevel Type="7" Text="Seven"/>
          <SubLevel Type="6" Text="Six"/>
        </SubLevels>
      </Level>
      <Level Code="T2" Text="Test 2">
        <SubLevels>
          <SubLevel Type="1" Text="One"/>
          <SubLevel Type="2" Text="Two"/>
        </SubLevels>
      </Level>
    </Levels>
    

    我想要的是两个下拉列表,一个链接到/Levels/Level,另一个链接到所选级别的子级别。目前,我有一个主要的绑定如下:

     <asp:XmlDataSource ID="XmlLevelInfo" runat="server" DataFile="~/Levels.xml">
     </asp:XmlDataSource>
     <asp:DropDownList ID="cboLevelFilter" runat="server" 
                          DataSourceID="XmlLevelInfo" DataTextField="Text" DataValueField="Code">
     </asp:DropDownList>
    

    这很好,但我无法解决如何将子级别链接到第二个下拉列表。是否可以使用数据绑定?

    1 回复  |  直到 15 年前
        1
  •  0
  •   Reddog    15 年前

    我希望第二个下拉列表的XmlDataSource需要在第一个下拉列表的SelectedItemChanged上改变XPath。

    这样XPath可能看起来像: //Level[@Code = '<CODE VALUE FROM SELECTED ITEM>']//SubLevel

    您可能还希望首先将其与所有子级绑定,这样XPath可能看起来像: //SubLevel

    那就需要付出一点额外的努力,才能让这一切成为美好的体验。。。(不要忘记在第一个下拉列表中将AutoPostBack设置为true!)

    推荐文章