2011-09-16 7 views
0

TeleriksのAppendDataBoundItemsプロパティRadTreeViewコントロールを使用すると、データを静的な値の横にバインドできます。 Teleriks RadTreeViewコントロールを使用して特定のノードにAppendDataBoundItemsをどうやって追加できますか?

は、だからあなたのツリーは

  • 静的項目
  • 静的項目B
  • 静的項目C
  • データバインド項目
  • データバインド項目B
  • データバインド項目C
  • のようになります。

しかし、私は

  • 静的項目
  • 静的項目B
  • 静的項目C
    • データバインド項目
    • データバインドのように、特定のノードの下にすべての私のバインドされた値を持っているしたいのですが項目B
    • データバインド項目C

私はこの効果を達成するためにデータを操作できることを認識していますが、私は自分のストアドプロシージャにUIコードを移動するのが快適ではありません。

他の方法はありますか?

答えて

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

である私はむしろ自分自身をデータバインディングを削除し、それを行うだろう。とにかくありがとう。 –

関連する問題