📄 defaultvb.aspx.vb
字号:
Imports System
Imports System.Collections
Imports System.ComponentModel
Imports System.Data
Imports System.Drawing
Imports System.Web
Imports System.Web.SessionState
Imports System.Web.UI
Imports System.Web.UI.WebControls
Imports System.Web.UI.HtmlControls
Imports Telerik.QuickStart
Imports Telerik.WebControls
'/ <summary>
'/ Summary description for _Default.
'/ </summary>
Namespace Telerik.TreeViewExamplesVBNET.WhatsNew
Public Class DefaultVB
Inherits XhtmlPage
Protected RadTree1 As RadTreeView
Protected RadTree2 As RadTreeView
Protected DragMessage As Label
Protected DataGrid1 As DataGrid
Protected Skins As DropDownList
Protected WithEvents CheckBoxes As CheckBox
Protected WithEvents AutoCheckChildNodes As CheckBox
Protected WithEvents SingleExpandPath As CheckBox
Protected WithEvents DragAndDrop As CheckBox
Protected NodeText As System.Web.UI.WebControls.TextBox
Protected SubmitButton As System.Web.UI.WebControls.Button
Protected WithEvents MultipleNodes As CheckBox
Private Sub PopulateGrid()
Dim values As String() = {"Drop", "A Tree Node", "Here"}
Dim dt As 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()
End Sub 'PopulateGrid
Private Sub AddRowToGrid(ByVal dt As DataTable, ByVal node As RadTreeNode)
Dim values As String() = {node.Text, node.Value, node.Category}
dt.Rows.Add(values)
DataGrid1.DataSource = dt
DataGrid1.DataBind()
End Sub 'AddRowToGrid
Protected Sub InitCheckBoxes()
CheckBoxes.Checked = True
AutoCheckChildNodes.Checked = True
MultipleNodes.Checked = True
DragAndDrop.Checked = True
SingleExpandPath.Checked = True
End Sub 'InitCheckBoxes
Protected Sub HandleNodeEdit(ByVal sender As Object, ByVal NodeEvents As RadTreeNodeEventArgs)
Dim nodeEdited As RadTreeNode = NodeEvents.NodeEdited
Dim newText As String = NodeEvents.NewText
nodeEdited.Text = newText
End Sub 'HandleNodeEdit
Protected Sub HandleContextClick(ByVal sender As Object, ByVal NodeEvents As RadTreeNodeEventArgs)
Dim contextCommand As String = NodeEvents.ContextMenuItemText
Dim currentNode As RadTreeNode = NodeEvents.NodeClicked
Select Case contextCommand
Case "Delete node"
currentNode.Remove()
Case "Copy node (clone)"
Dim newNode As New RadTreeNode(currentNode.Text + " (clone)")
newNode.Image = currentNode.Image
newNode.ContextMenuName = currentNode.ContextMenuName
currentNode.ParentNodeCollection.Add(newNode)
Case "New folder"
Dim folderNode As New RadTreeNode("New Folder")
folderNode.Image = "folder.gif"
folderNode.ContextMenuName = "Mail"
currentNode.Nodes.Add(folderNode)
currentNode.Expanded = True
End Select
End Sub 'HandleContextClick
Protected Sub HandleDrop(ByVal sender As Object, ByVal NodeEvent As RadTreeNodeEventArgs)
Dim sourceNode As RadTreeNode = NodeEvent.SourceDragNode
Dim destNode As RadTreeNode = NodeEvent.DestDragNode
If Not (destNode Is Nothing) Then
If sourceNode.TreeViewParent.SelectedNodes.Count <= 1 Then
If Not (sourceNode Is destNode.Parent) Then
sourceNode.Remove()
destNode.AddNode(sourceNode)
sourceNode.Selected = False
End If
ElseIf sourceNode.TreeViewParent.SelectedNodes.Count > 1 Then
Dim node As RadTreeNode
For Each node In sourceNode.TreeViewParent.SelectedNodes
If Not (node Is destNode.Parent) Then
node.Remove()
destNode.AddNode(node)
End If
node.Selected = False
Next node
End If
destNode.Expanded = True
sourceNode.TreeViewParent.ClearSelectedNodes()
ElseIf NodeEvent.HtmlElementID = "Grid" Then
Dim dt As DataTable = CType(Session("DataTable"), DataTable)
If sourceNode.TreeViewParent.SelectedNodes.Count <= 1 Then
AddRowToGrid(dt, sourceNode)
ElseIf sourceNode.TreeViewParent.SelectedNodes.Count > 1 Then
Dim node As RadTreeNode
For Each node In sourceNode.TreeViewParent.SelectedNodes
AddRowToGrid(dt, node)
Next node
End If
End If
End Sub 'HandleDrop
Private Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.Load
If Not Page.IsPostBack Then
'NodeText.Attributes.Add("DropId","textbox");
InitCheckBoxes()
PopulateGrid()
End If
End Sub 'Page_Load
#Region "Web Form Designer generated code"
Protected Overrides Sub OnInit(ByVal e As EventArgs)
'
' CODEGEN: This call is required by the ASP.NET Web Form Designer.
'
InitializeComponent()
MyBase.OnInit(e)
End Sub 'OnInit
'/ Required method for Designer support - do not modify
'/ the contents of this method with the code editor.
'/ </summary>
Private Sub InitializeComponent()
End Sub 'InitializeComponent
#End Region
Private Sub CheckBoxes_CheckedChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles CheckBoxes.CheckedChanged
RadTree1.CheckBoxes = CheckBoxes.Checked
RadTree2.CheckBoxes = CheckBoxes.Checked
End Sub 'CheckBoxes_CheckedChanged
Private Sub AutoCheckChildNodes_CheckedChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles AutoCheckChildNodes.CheckedChanged
If AutoCheckChildNodes.Checked Then
RadTree1.AfterClientCheck = "CheckChildNodes"
RadTree2.AfterClientCheck = "CheckChildNodes"
Else
RadTree1.AfterClientCheck = String.Empty
RadTree2.AfterClientCheck = String.Empty
End If
End Sub 'AutoCheckChildNodes_CheckedChanged
Private Sub MultipleNodes_CheckedChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles MultipleNodes.CheckedChanged
RadTree1.MultipleSelect = MultipleNodes.Checked
RadTree2.MultipleSelect = MultipleNodes.Checked
End Sub 'MultipleNodes_CheckedChanged
Private Sub SingleExpandPath_CheckedChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles SingleExpandPath.CheckedChanged
RadTree1.SingleExpandPath = SingleExpandPath.Checked
RadTree2.SingleExpandPath = SingleExpandPath.Checked
End Sub 'SingleExpandPath_CheckedChanged
Private Sub DragAndDrop_CheckedChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles DragAndDrop.CheckedChanged
RadTree1.DragAndDrop = DragAndDrop.Checked
RadTree2.DragAndDrop = DragAndDrop.Checked
End Sub 'DragAndDrop_CheckedChanged
Protected Sub SwitchSkins(ByVal sender As Object, ByVal e As EventArgs)
RadTree1.Skin = Skins.SelectedItem.Value
RadTree2.Skin = Skins.SelectedItem.Value
End Sub 'SwitchSkins
End Class 'DefaultCS
End Namespace
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -