Telerik RadTree绑定到XML DataSource

时间:2009-04-02 14:17:09

标签: asp.net xml data-binding telerik

我有一个Telerik RadTree绑定到XMLDataSource。 我想将节点的文本设置为由2个属性(数字和名称)组成。

请参阅<telerik:RadTreeNodeBinding>

示例:

  • “1。你好吗?”
  • “2。你多大了?”

XML:

<questions>
  <question name="How are you?" number="1" imageurl="">
  </question>
  <question name="How old are you?" number="2" imageurl="">
  </question>
</questions>

ASPX:

<telerik:RadTreeView ID="RadTreeView1" runat="server">              
  <DataBindings>  
    <telerik:RadTreeNodeBinding DataMember="questions" Text="Questions" 
       ImageUrl="/questions.png" Expanded="false" />   
    <telerik:RadTreeNodeBinding DataMember="question" 
       Text='[<%# DataBinder.Eval("number")%>].[<%# DataBinder.Eval("name")%>]' 
       ImageUrlField="imageurl" FormatString="{0}" Expanded="false" />
  </DataBindings>
</telerik:RadTreeView>

2 个答案:

答案 0 :(得分:1)

还没有对此进行测试,但试一试:

XML:

<questions>
  <question name="How are you?" number="1" imageurl=""></question>
  <question name="How old are you?" number="2" imageurl=""></question>
</questions>

ASPX:

    <telerik:RadTreeView ID="RadTreeView1" runat="server">              
        <DataBindings>  
            <telerik:RadTreeNodeBinding DataMember="questions" Text="Questions" ImageUrl="/questions.png" Expanded="false" />   
            <telerik:RadTreeNodeBinding DataMember="question" Text='[<%# DataBinder.Eval(Container.DataItem, "number")%>].[<%# DataBinder.Eval(Container.DataItem, "name")%>]' ImageUrlField="imageurl" FormatString="{0}" Expanded="false" />
       </DataBindings>
    </telerik:RadTreeView>

答案 1 :(得分:1)

解决:我使用应用于所有节点的NodeTemplate来添加“数字”。如果在xpath中找到...

<telerik:RadTreeView ID="RadTreeView1" runat="server">
    <NodeTemplate>
            <%# XPath("@number", "{0}.") %>
            <%# DataBinder.Eval(Container, "Text") %>
    </NodeTemplate>             
    <DataBindings>
        <telerik:RadTreeNodeBinding DataMember="questions" Text="Questions" ImageUrl="/questions.png" Expanded="false" />   
        <telerik:RadTreeNodeBinding DataMember="question" TextField="name" ImageUrlField="kpiimageurl" FormatString="{0}" Expanded="false" /> 
    </DataBindings>  
</telerik:RadTreeView>