⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 defaultcs.aspx.cs

📁 Telerik是很大的第三方软件制造商
💻 CS
字号:
using System;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Web;
using System.Web.SessionState;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;
using Telerik.QuickStart;
using Telerik.WebControls;

namespace Telerik.TreeViewExamplesCSharp.WhatsNew
{
	/// <summary>
	/// Summary description for _Default.
	/// </summary>
	public class DefaultCS: XhtmlPage
	{
		protected RadTreeView RadTree1;
		protected RadTreeView RadTree2;
		protected Label DragMessage;
		protected DataGrid DataGrid1;

		protected DropDownList Skins;

		protected CheckBox CheckBoxes;
		protected CheckBox AutoCheckChildNodes;
		protected CheckBox SingleExpandPath;
		protected CheckBox DragAndDrop;
		protected System.Web.UI.WebControls.TextBox NodeText;
		protected System.Web.UI.WebControls.Button SubmitButton;		
		protected CheckBox MultipleNodes;

		private void PopulateGrid()
		{
			string [] values = { "Drop", "A Tree Node", "Here" };

			DataTable dt = new DataTable();
			dt.Columns.Add("Text");
			dt.Columns.Add("Value");
			dt.Columns.Add("Category");
			dt.Rows.Add(values);
			dt.Rows.Add(values);
			dt.Rows.Add(values);
			Session["DataTable"] = dt;

			//DataGrid1.Attributes.Add("DropID","Grid");
			DataGrid1.DataSource = dt;
			DataGrid1.DataBind();		
		}

		private void AddRowToGrid(DataTable dt, RadTreeNode node)
		{
			string [] values = { node.Text, node.Value, node.Category };			
			dt.Rows.Add(values);

			DataGrid1.DataSource = dt;
			DataGrid1.DataBind();
		}

		protected void InitCheckBoxes()
		{
			CheckBoxes.Checked = true;
			AutoCheckChildNodes.Checked = true;
			MultipleNodes.Checked = true;
			DragAndDrop.Checked = true;
			SingleExpandPath.Checked = true;
		}

		protected void HandleNodeEdit(object sender, RadTreeNodeEventArgs NodeEvents)
		{			
			RadTreeNode nodeEdited = NodeEvents.NodeEdited;
			string newText = NodeEvents.NewText;

			nodeEdited.Text = newText;
		}

		protected void HandleContextClick(object sender, RadTreeNodeEventArgs NodeEvents)
		{
			string contextCommand = NodeEvents.ContextMenuItemText;
			RadTreeNode currentNode = NodeEvents.NodeClicked;

			switch (contextCommand)
			{
				case "Delete node"			: 				
					currentNode.Remove(); 
					break;
				case "Copy node (clone)"	:	
					RadTreeNode newNode = new RadTreeNode(currentNode.Text + " (clone)");
					newNode.Image = currentNode.Image;
					newNode.ContextMenuName = currentNode.ContextMenuName;
					currentNode.ParentNodeCollection.Add(newNode);
					break;
				case "New folder"			:
					RadTreeNode folderNode = new RadTreeNode("New Folder");	
					folderNode.Image = "folder.gif";
					folderNode.ContextMenuName = "Mail";
					currentNode.Nodes.Add(folderNode);
					currentNode.Expanded = true;
					break;
			}			

		}
		

		protected void HandleDrop(object sender, RadTreeNodeEventArgs NodeEvent)
		{			
			RadTreeNode sourceNode = NodeEvent.SourceDragNode;
			RadTreeNode destNode = NodeEvent.DestDragNode;			
			
			if (destNode != null)
			{
				if (sourceNode.TreeViewParent.SelectedNodes.Count <= 1)
				{
					if (sourceNode != destNode.Parent)
					{
						sourceNode.Remove();
						destNode.AddNode(sourceNode);
						sourceNode.Selected = false;
					}
				}
				else if (sourceNode.TreeViewParent.SelectedNodes.Count > 1)
				{
					foreach (RadTreeNode node in sourceNode.TreeViewParent.SelectedNodes)
					{
						if (node != destNode.Parent)
						{
							node.Remove();							
							destNode.AddNode(node);
						}
						node.Selected = false;
					}
				}				
				destNode.Expanded = true;				
				sourceNode.TreeViewParent.ClearSelectedNodes();
			}
			else if (NodeEvent.HtmlElementID == "Grid")
			{			
				DataTable dt = (DataTable) Session["DataTable"];
				if (sourceNode.TreeViewParent.SelectedNodes.Count <= 1)
				{
					AddRowToGrid(dt, sourceNode);
				}
				else if (sourceNode.TreeViewParent.SelectedNodes.Count > 1)
				{
					foreach (RadTreeNode node in sourceNode.TreeViewParent.SelectedNodes)
						AddRowToGrid(dt, node);
				}
			}
		}

		private void Page_Load(object sender, System.EventArgs e)
		{
			if (!Page.IsPostBack)
			{
				//NodeText.Attributes.Add("DropId","textbox");
				InitCheckBoxes();
				PopulateGrid();				
			}
		}

		#region Web Form Designer generated code
		override protected void OnInit(EventArgs e)
		{
			//
			// CODEGEN: This call is required by the ASP.NET Web Form Designer.
			//
			InitializeComponent();
			base.OnInit(e);
		}
		
		///		Required method for Designer support - do not modify
		///		the contents of this method with the code editor.
		/// </summary>
		private void InitializeComponent()
		{
			this.CheckBoxes.CheckedChanged += new System.EventHandler(this.CheckBoxes_CheckedChanged);
			this.AutoCheckChildNodes.CheckedChanged += new System.EventHandler(this.AutoCheckChildNodes_CheckedChanged);
			this.MultipleNodes.CheckedChanged += new System.EventHandler(this.MultipleNodes_CheckedChanged);
			this.SingleExpandPath.CheckedChanged += new System.EventHandler(this.SingleExpandPath_CheckedChanged);
			this.DragAndDrop.CheckedChanged += new System.EventHandler(this.DragAndDrop_CheckedChanged);
			this.Load += new System.EventHandler(this.Page_Load);

		}
		#endregion

		private void CheckBoxes_CheckedChanged(object sender, System.EventArgs e)
		{
			RadTree1.CheckBoxes = CheckBoxes.Checked;
			RadTree2.CheckBoxes = CheckBoxes.Checked;			
		}

		private void AutoCheckChildNodes_CheckedChanged(object sender, System.EventArgs e)
		{
			if (AutoCheckChildNodes.Checked)
			{
				RadTree1.AfterClientCheck = "CheckChildNodes";
				RadTree2.AfterClientCheck = "CheckChildNodes";				
			}
			else
			{
				RadTree1.AfterClientCheck = String.Empty;
				RadTree2.AfterClientCheck = String.Empty;
			}
		}

		private void MultipleNodes_CheckedChanged(object sender, System.EventArgs e)
		{
			RadTree1.MultipleSelect = MultipleNodes.Checked;
			RadTree2.MultipleSelect = MultipleNodes.Checked;
		}

		private void SingleExpandPath_CheckedChanged(object sender, System.EventArgs e)
		{
			RadTree1.SingleExpandPath = SingleExpandPath.Checked;
			RadTree2.SingleExpandPath = SingleExpandPath.Checked;
		}

		private void DragAndDrop_CheckedChanged(object sender, System.EventArgs e)
		{
			RadTree1.DragAndDrop = DragAndDrop.Checked;
			RadTree2.DragAndDrop = DragAndDrop.Checked;
		}

		protected void SwitchSkins(object sender, EventArgs e)
		{
			RadTree1.Skin = Skins.SelectedItem.Value;
			RadTree2.Skin = Skins.SelectedItem.Value;
		}


	}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -