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

📄 defaultcs.aspx.cs

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

namespace Telerik.TreeViewExamplesCSharp.ClientLoadOnDemandDirectory
{
	/// <summary>
	/// Summary description for _Default.
	/// </summary>
	public class DefaultCS: XhtmlPage
	{
		protected System.Web.UI.WebControls.Label message;
		protected RadTreeView RadTree1;	
		protected RadioButtonList LoadingMessagePos;
			
		private void BindDirectory(string dirPath, RadTreeNodeCollection collection)
		{			
			string[] dirs = Directory.GetDirectories(dirPath);
			foreach (string path in dirs)
			{
				string[] parts = path.Split('\\');
				string name = parts[parts.Length-1];
				RadTreeNode node = new RadTreeNode(name);
				node.Image = "Folder.gif";
				node.Value = path;
				node.Category = "Folder";
				node.ExpandMode = ExpandMode.ServerSideCallBack;
				collection.Add(node);
			}

			string[] files = Directory.GetFiles(dirPath);
			foreach (string s in files)
			{
				string[] parts = s.Split('\\');
				string name = parts[parts.Length-1];
				RadTreeNode node = new RadTreeNode(name);
				FileInfo fi = new FileInfo(s);
				switch (fi.Extension)
				{
					case ".cs" : node.Image = "cs.gif"; break;
					case ".css" : node.Image = "css.gif"; break;
					case ".html" : node.Image = "html.gif"; break;
					case ".resx" : node.Image = "resx.gif"; break;
					case ".vb" : node.Image = "vb.gif"; break;
					case ".xml" : node.Image = "xml.gif"; break;
					case ".ascx" : node.Image = "ascx.gif"; break;
					case ".gif" : 
					case ".jpg" : node.Image = "gif.gif"; break;
					default: node.Image = "File.gif"; break;
				}				
				node.Value = fi.Name + "@" + fi.Length + "@" + fi.LastWriteTime.ToString();
				node.Category = "File";
				collection.Add(node);
			}

			if (collection.Count == 0)
			{
				RadTreeNode emptyNode = new RadTreeNode("Folder is empty");
				emptyNode.Enabled = false;
				collection.Add(emptyNode);
			}
		}
		
		private void Page_Load(object sender, System.EventArgs e)
		{
			if (!Page.IsPostBack)
			{
				string rootFolder = Server.MapPath("../../");

				RadTreeNode rootNode = new RadTreeNode(rootFolder);
				rootNode.Image = "Folder.gif";
				rootNode.Expanded = true;
				rootNode.Category = "Folder";				
				RadTree1.AddNode(rootNode);

				BindDirectory(rootFolder, rootNode.Nodes);	

				RadTree1.LoadingMessagePosition = LoadingMessagePosition.BeforeNodeText; 
				RadTree1.LoadingMessageCssClass = "LoadingMessageBlue";
				RadTree1.LoadingMessage = "(loading ..)";
			}
		}

		private void RadTree1_NodeExpand(object o, Telerik.WebControls.RadTreeNodeEventArgs e)
		{
			RadTreeNode folderNode = e.NodeClicked;	
			string path = folderNode.Value;
			BindDirectory(path, folderNode.Nodes);
		}

		protected void LoadingMessagePositionChanged(object sender, System.EventArgs e) 
		{
			switch (LoadingMessagePos.SelectedItem.Value)
			{
				case "Before" : 
					RadTree1.LoadingMessagePosition = LoadingMessagePosition.BeforeNodeText; 
					RadTree1.LoadingMessageCssClass = "LoadingMessageBlue";
					RadTree1.LoadingMessage = "(loading ..)";
					break;
				case "After" :	
					RadTree1.LoadingMessagePosition = LoadingMessagePosition.AfterNodeText;
					RadTree1.LoadingMessageCssClass = "LoadingMessageBlue";
					RadTree1.LoadingMessage = "(loading ...)";
					break;
				case "Below" :	
					RadTree1.LoadingMessagePosition = LoadingMessagePosition.BelowNodeText; 
					RadTree1.LoadingMessageCssClass = "LoadingMessage";
					RadTree1.LoadingMessage = "(loading ...)";
					break;
				case "None" :	
					RadTree1.LoadingMessagePosition = LoadingMessagePosition.None; 
					break;
			}
		}

		#region Web Form Designer generated code
		override protected void OnInit(EventArgs e)
		{
			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.RadTree1.NodeExpand += new Telerik.WebControls.RadTreeView.RadTreeViewEventHandler(this.RadTree1_NodeExpand);
			this.Load += new System.EventHandler(this.Page_Load);

		}
		#endregion
        
	}
}

⌨️ 快捷键说明

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