Заполнение treeView из XMLDataSource в C#, но в пользовательском интерфейсе ничего не видно

Aspx

<asp:XmlDataSource runat="server" ID="TreeXml" EnableViewState="false" EnableCaching="false" />

<asp:TreeView ID="SelectTree" runat="server" DataSourceID="projectsTreeXml" AutoGenerateDataBindings="false">
     <DataBindings>
         <asp:TreeNodeBinding DataMember="A" TextField="DisplayID" ValueField="ID"/>
         <asp:TreeNodeBinding DataMember="B" TextField="DisplayID" ValueField="ID" />
     </DataBindings>
</asp:TreeView>

Код C#

TreeXml.Data = getXMLString();
TreeXml.DataBind();
SelectCtrlTree.DataBind();

Когда я отлаживаюсь, у SelectTree источник данных успешно заполняется после вызова DataBind(), но элемент Nodes имеет значение null, я думаю, что все должно быть в порядке.

Get getXMLString возвращает String

<?xml version="1.0" encoding="UTF-8" ?> 
- <Root>
 - <A ID="3063" Name="All Initiatives" DisplayID="Enterprise">
   <B ID="4911" Name="Closed - 2" DisplayID="Closed - 2"/>
  - <A ID="17902" Name="Corporate Programs" DisplayID="Corporate">
   - <A ID="25920" Name="In-flight Projects" DisplayID="In-flight">
      <B ID="3688" Name="Cash Flow BI Project" DisplayID="CORP00712" />  
     </A>
    </A>
   </A>
  </Root>

Понятия не имею, почему пользовательский интерфейс ничего не показывает

1 ответ

Я думаю, что ваш формат XML не совсем правильно. Позвольте вам увидеть эту ссылку, как связать данные XML с древовидной структурой в asp.net. http://msdn.microsoft.com/en-us/library/494y92bs%28v=vs.100%29.aspx

Другие вопросы по тегам