2011-09-16 25 views
0

Teleriks RadTreeView控件上的AppendDataBoundItems屬性允許您將數據綁定在靜態值的旁邊。如何使用Teleriks RadTreeView控件將AppendDataBoundItems附加到特定節點?

所以你的樹看起來像

  • 靜態項目A
  • 靜態B項
  • 靜態C項
  • 數據綁定項目A
  • 數據綁定B項
  • 數據綁定C項

但我想有一個特定節點下所有我綁定的值,比如

  • 靜態項目A
  • 靜態B項
  • 靜態C項
    • 數據綁定項目A
    • 數據綁定Item B
    • Databound項目C

我知道我可以操縱數據來實現這種效果,但我不習慣將UI代碼移到我存儲的proc中。

有沒有其他辦法?

回答

0

我開始認爲這是不可能的,所以我只是自己添加項目。

爲了將來參考其他人在尋找如何做到這一點,這裏是手動方式。

Default2.aspx

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Default2.aspx.cs" Inherits="TelerikTreetoProc._Default2" %> 
<%@ Register assembly="Telerik.Web.UI" namespace="Telerik.Web.UI" tagprefix="telerik" %> 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 

<html xmlns="http://www.w3.org/1999/xhtml" > 
<head runat="server"> 
    <title></title> 
</head> 
<body> 
    <form id="form1" runat="server"> 
    <div> 
     <asp:ScriptManager ID="scriptManager1" runat="server" /> 
     <telerik:RadTreeView ID="treeSideBarCommands" Runat="server"> 
      <Nodes> 
       <telerik:RadTreeNode runat="server" Text="Static Item A" /> 
       <telerik:RadTreeNode runat="server" Text="Static Item B" /> 
       <telerik:RadTreeNode runat="server" Text="Static Item C"/> 
      </Nodes> 
     </telerik:RadTreeView> 
    </div> 
    </form> 
</body> 
</html> 

而且隱藏文件我的代碼是

using System; 
using System.Data; 
using System.Data.SqlClient; 
using System.Web.Configuration; 
using Telerik.Web.UI; 

namespace TelerikTreetoProc 
{ 
    public partial class _Default2 : System.Web.UI.Page 
    { 
     protected void Page_Load(object sender, EventArgs e) 
     { 
      string sql = "select EmployeeID, FirstName + LastName [name] from Employees"; 
      string connString = WebConfigurationManager.ConnectionStrings["NorthwindConnectionString"].ConnectionString; 
      using(var cn = new SqlConnection(connString)) 
      using(var cmd = new SqlCommand(sql, cn)) 
      { 
       cn.Open(); 
       cmd.CommandType = CommandType.Text; 
       SqlDataReader dr = cmd.ExecuteReader(); 
       RadTreeNode nd = treeSideBarCommands.Nodes[2]; 
       while (dr.Read()) 
       { 
        nd.Nodes.Add(new RadTreeNode(dr[1].ToString(), dr[0].ToString())); 
       } 
      } 
     } 
    } 
} 
1

我會存儲過程返回你的數據到你要綁定到你的樹視圖的數據集。一旦獲得了數據集,我將操縱數據集中的數據並將修改後的數據集綁定到您的樹視圖。存儲過程仍然返回你的數據綁定數據,然後你玩中間人。

+0

老實說,我寧願只是刪除數據綁定,並做我自己。不管怎麼說,還是要謝謝你。 –

相關問題