Form1.vb
上传用户:hbmarket
上传日期:2022-08-01
资源大小:45k
文件大小:8k
源码类别:

组合框控件

开发平台:

Visual Basic

  1. Public Class Form1
  2.     Inherits System.Windows.Forms.Form
  3. #Region " Windows Form Designer generated code "
  4.     Public Sub New()
  5.         MyBase.New()
  6.         'This call is required by the Windows Form Designer.
  7.         InitializeComponent()
  8.         'Add any initialization after the InitializeComponent() call
  9.     End Sub
  10.     'Form overrides dispose to clean up the component list.
  11.     Protected Overloads Overrides Sub Dispose(ByVal disposing As Boolean)
  12.         If disposing Then
  13.             If Not (components Is Nothing) Then
  14.                 components.Dispose()
  15.             End If
  16.         End If
  17.         MyBase.Dispose(disposing)
  18.     End Sub
  19.     'Required by the Windows Form Designer
  20.     Private components As System.ComponentModel.IContainer
  21.     'NOTE: The following procedure is required by the Windows Form Designer
  22.     'It can be modified using the Windows Form Designer.  
  23.     'Do not modify it using the code editor.
  24.     Friend WithEvents ComboBoxTree1 As ComboBoxTree_Demo.Controls.ComboBoxTree
  25.     Friend WithEvents Button2 As System.Windows.Forms.Button
  26.     Friend WithEvents Button1 As System.Windows.Forms.Button
  27.     Friend WithEvents Label1 As System.Windows.Forms.Label
  28.     Friend WithEvents TextBox1 As System.Windows.Forms.TextBox
  29.     Friend WithEvents ImageList1 As System.Windows.Forms.ImageList
  30.     <System.Diagnostics.DebuggerStepThrough()> Private Sub InitializeComponent()
  31.         Me.components = New System.ComponentModel.Container
  32.         Dim resources As System.Resources.ResourceManager = New System.Resources.ResourceManager(GetType(Form1))
  33.         Me.ComboBoxTree1 = New ComboBoxTree_Demo.Controls.ComboBoxTree
  34.         Me.ImageList1 = New System.Windows.Forms.ImageList(Me.components)
  35.         Me.Button2 = New System.Windows.Forms.Button
  36.         Me.Button1 = New System.Windows.Forms.Button
  37.         Me.Label1 = New System.Windows.Forms.Label
  38.         Me.TextBox1 = New System.Windows.Forms.TextBox
  39.         Me.SuspendLayout()
  40.         '
  41.         'ComboBoxTree1
  42.         '
  43.         Me.ComboBoxTree1.ImageList = Me.ImageList1
  44.         Me.ComboBoxTree1.Location = New System.Drawing.Point(24, 16)
  45.         Me.ComboBoxTree1.Name = "ComboBoxTree1"
  46.         Me.ComboBoxTree1.SelectedImageIndex = 0
  47.         Me.ComboBoxTree1.SelectedNode = Nothing
  48.         Me.ComboBoxTree1.Size = New System.Drawing.Size(344, 22)
  49.         Me.ComboBoxTree1.TabIndex = 0
  50.         '
  51.         'ImageList1
  52.         '
  53.         Me.ImageList1.ColorDepth = System.Windows.Forms.ColorDepth.Depth32Bit
  54.         Me.ImageList1.ImageSize = New System.Drawing.Size(16, 16)
  55.         Me.ImageList1.ImageStream = CType(resources.GetObject("ImageList1.ImageStream"), System.Windows.Forms.ImageListStreamer)
  56.         Me.ImageList1.TransparentColor = System.Drawing.Color.Transparent
  57.         '
  58.         'Button2
  59.         '
  60.         Me.Button2.FlatStyle = System.Windows.Forms.FlatStyle.System
  61.         Me.Button2.Location = New System.Drawing.Point(384, 48)
  62.         Me.Button2.Name = "Button2"
  63.         Me.Button2.Size = New System.Drawing.Size(136, 24)
  64.         Me.Button2.TabIndex = 6
  65.         Me.Button2.Text = "Clear Selection"
  66.         '
  67.         'Button1
  68.         '
  69.         Me.Button1.FlatStyle = System.Windows.Forms.FlatStyle.System
  70.         Me.Button1.Location = New System.Drawing.Point(384, 16)
  71.         Me.Button1.Name = "Button1"
  72.         Me.Button1.Size = New System.Drawing.Size(136, 24)
  73.         Me.Button1.TabIndex = 5
  74.         Me.Button1.Text = "Get Selected Node"
  75.         '
  76.         'Label1
  77.         '
  78.         Me.Label1.Location = New System.Drawing.Point(24, 56)
  79.         Me.Label1.Name = "Label1"
  80.         Me.Label1.Size = New System.Drawing.Size(328, 16)
  81.         Me.Label1.TabIndex = 8
  82.         Me.Label1.Text = "Current Selection:"
  83.         '
  84.         'TextBox1
  85.         '
  86.         Me.TextBox1.Location = New System.Drawing.Point(24, 72)
  87.         Me.TextBox1.Name = "TextBox1"
  88.         Me.TextBox1.ReadOnly = True
  89.         Me.TextBox1.Size = New System.Drawing.Size(344, 20)
  90.         Me.TextBox1.TabIndex = 7
  91.         Me.TextBox1.Text = ""
  92.         '
  93.         'Form1
  94.         '
  95.         Me.AutoScaleBaseSize = New System.Drawing.Size(5, 13)
  96.         Me.ClientSize = New System.Drawing.Size(536, 286)
  97.         Me.Controls.Add(Me.Label1)
  98.         Me.Controls.Add(Me.TextBox1)
  99.         Me.Controls.Add(Me.Button2)
  100.         Me.Controls.Add(Me.Button1)
  101.         Me.Controls.Add(Me.ComboBoxTree1)
  102.         Me.Name = "Form1"
  103.         Me.Text = "ComboBoxTree Demo"
  104.         Me.ResumeLayout(False)
  105.     End Sub
  106. #End Region
  107.     Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
  108.         ' Set some initial TreeView properties
  109.         ComboBoxTree1.TreeView.ShowLines = False
  110.         ComboBoxTree1.SuspendLayout()
  111.         ComboBoxTree1.TreeView.Visible = True
  112.         ' Creating the tree nodes while the TreeView is visible avoids the bug
  113.         ' that shows a horizontal scrollbar on the bottom of the tree.
  114.         Dim Node As TreeNode = ComboBoxTree1.TreeView.Nodes.Add("--- No selection ---")
  115.         Node.ImageIndex = 2
  116.         Node.SelectedImageIndex = 2
  117.         ComboBoxTree1.TreeView.Nodes.AddRange(New System.Windows.Forms.TreeNode() {New System.Windows.Forms.TreeNode("Node0", New System.Windows.Forms.TreeNode() {New System.Windows.Forms.TreeNode("Node1", New System.Windows.Forms.TreeNode() {New System.Windows.Forms.TreeNode("Node2"), New System.Windows.Forms.TreeNode("Node3")}), New System.Windows.Forms.TreeNode("Node4"), New System.Windows.Forms.TreeNode("Node5")})})
  118.         ComboBoxTree1.TreeView.Nodes.AddRange(New System.Windows.Forms.TreeNode() {New System.Windows.Forms.TreeNode("Node0", New System.Windows.Forms.TreeNode() {New System.Windows.Forms.TreeNode("Node1", New System.Windows.Forms.TreeNode() {New System.Windows.Forms.TreeNode("Node2"), New System.Windows.Forms.TreeNode("Node3")}), New System.Windows.Forms.TreeNode("Node4"), New System.Windows.Forms.TreeNode("Node5")})})
  119.         ComboBoxTree1.TreeView.Nodes.AddRange(New System.Windows.Forms.TreeNode() {New System.Windows.Forms.TreeNode("Node0", New System.Windows.Forms.TreeNode() {New System.Windows.Forms.TreeNode("Node1", New System.Windows.Forms.TreeNode() {New System.Windows.Forms.TreeNode("Node2"), New System.Windows.Forms.TreeNode("Node3")}), New System.Windows.Forms.TreeNode("Node4"), New System.Windows.Forms.TreeNode("Node5")})})
  120.         ComboBoxTree1.TreeView.Visible = False
  121.         Node = ComboBoxTree1.TreeView.Nodes.Add("New node...")
  122.         Node.ImageIndex = 3
  123.         Node.SelectedImageIndex = 3
  124.         ComboBoxTree1.ResumeLayout()
  125.         ' Select a node...
  126.         Me.ComboBoxTree1.SelectedNode = Me.ComboBoxTree1.TreeView.Nodes.Item(2).Nodes.Item(1)
  127.     End Sub
  128.     Private Sub Form1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.Click
  129.         ' Actually, this should be handled by the ComboBoxTree itself,
  130.         ' but the current version of the control does not handle this.
  131.         Me.ComboBoxTree1.DroppedDown = False
  132.     End Sub
  133.     Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
  134.         If Me.ComboBoxTree1.SelectedNode Is Nothing Then
  135.             MsgBox("No tree node is selected.")
  136.         Else
  137.             MsgBox(Me.ComboBoxTree1.SelectedNode.Text)
  138.         End If
  139.     End Sub
  140.     Private Sub ComboBoxTree1_AfterSelect(ByVal sender As Object) Handles ComboBoxTree1.AfterSelect
  141.         If Me.ComboBoxTree1.SelectedNode Is Nothing Then
  142.             Me.TextBox1.Text = "No tree node is selected."
  143.         ElseIf Me.ComboBoxTree1.SelectedNode.Text.StartsWith("---") Then
  144.             Me.ComboBoxTree1.SelectedNode = Nothing
  145.         Else
  146.             Me.TextBox1.Text = Me.ComboBoxTree1.SelectedNode.Text
  147.         End If
  148.     End Sub
  149.     Private Sub ComboBoxTree1_BeforeSelect(ByVal sender As Object, ByVal Node As System.Windows.Forms.TreeNode, ByRef Cancel As Boolean) Handles ComboBoxTree1.BeforeSelect
  150.         If (Not Node Is Nothing) AndAlso Node.Text.StartsWith("New") Then
  151.             Cancel = True
  152.             Me.ComboBoxTree1.DroppedDown = False
  153.             MsgBox(Node.Text)
  154.         End If
  155.     End Sub
  156.     Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
  157.         Me.ComboBoxTree1.SelectedNode = Nothing
  158.     End Sub
  159. End Class