
正文
vb.net树型下拉框的简单介绍
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示
关于VB.net下拉框的问题
设置一个全局变量:
Public item As String
然后在第一个窗口那里取:
item = ComboBox1.SelectedItem.ToString()
然后加到第二个窗口那里:
ComboBox2.DropDownStyle = ComboBoxStyle.DropDownList(这个不可改内容的设定可以在建立ComboBox的时候就设定了)
ComboBox2.Items.Add(item) (加入内容,你或者也可以用别的,比如insert,这个可以加到指定的位置)
ComboBox2.SelectedItem = item (显示那个刚加进来的内容)
这样应该可以了,建议你多看MSDN。
相关问答
Q1: 想咨询一下在VB.NET中设置一个下拉条,选项是1-10,我希望每个选项能对应读出我D盘中1-10的文本数据
不知道你是想实现多少功能
读取文件内容的处理你自己做了么?
实现方法是在代码中判断,如果是1那么读D盘1的文本数据就行
Q2: 请问vb.net中有支持多列显示的下拉框吗?
就用ComboBox,ComboBox由一个List和一个text组成,List里是一个个的对象有ValueMember和DisplayMember两个属性。你将DisplayMember属性改成usercode,username 即可。
Q3: vb.net里有没有这种列表控件支持下拉菜单?
DataGridView就可以啊,在
担不能像上面一样合并和拆分单元格。也不能像TreeView控件那样折叠。
Q4: VB.net如何动态获取菜单栏中的菜单名并用树型表示
添加:(先在加一个contextMenu,再它的添加子菜单的click事件编程)
Try
’使TreeView可以被编辑
TreeView1.LabelEdit = True
‘判断你是不是选定的是不可编辑的节点,我这里工种节点不可以被编辑,只有工种下级的
各个工种名称可以被编辑
If Trim(TreeView1.SelectedNode.Text) = "工种" Then
‘添加节点
AddNode = New TreeNode("请输入新工种名字")
TreeView1.SelectedNode.Nodes.Add(AddNode)
TreeView1.ExpandAll()
AddNode.BeginEdit()
TreeView1.LabelEdit = True
NodeAdded = True
End If
Catch err As Exception
MsgBox(err.ToString)
End Try
删除与添加类似,只是如果你的节点名字从其他处(如数据库)得来,那么你还需要更新数据库
编辑:
Private Sub TreeView1_BeforeLabelEdit(ByVal sender As Object, ByVal e As System.Windows.Forms.NodeLabelEditEventArgs) Handles TreeView1.BeforeLabelEdit
TreeView1.LabelEdit = True ‘使可以编辑
AddNode = TreeView1.SelectedNode
End Sub
Private Sub TreeView1_AfterLabelEdit(ByVal sender As Object, ByVal e As System.windows.Forms.NodeLabelEditEventArgs) Handles TreeView1.AfterLabelEdit
Try
‘此时你改完了节点名字
TreeView1.SelectedNode.EndEdit(True)
If e.Label Is Nothing Then
'do nothing
ElseIf e.Node.Text = "工种" Then ‘工种不能改
e.CancelEdit() = True
‘e.Node.Text ,e.Label.ToString 一个是改前的名字一个是该后的名字,具体哪个对
哪个请查MSDN
ElseIf Trim(e.Node.Text) "工种" And e.Node.Text e.Label.ToString Then
If MsgBox("此操作会导致当前工种中的所有人员的工种都被更改,是否确定?", MsgBoxStyle.YesNo + MsgBoxStyle.Information, "警告") = MsgBoxResult.Yes Then
。。。。 ‘我的更改
MsgBox("更改成功!", MsgBoxStyle.OKOnly, "提示")
'Call InitTree() ‘有时要重新把treeview初始化一遍,视需求定
End If
End If
Catch err As Exception
MsgBox(err.ToString)
End Try
End Sub
其他:
挡treeview得到焦点时你可以使用ContextMenu,反之ContextMenu禁用
Private Sub TreeView1_GotFocus(ByVal sender As Object, ByVal e As System.EventArgs) Handles TreeView1.GotFocus
TreeView1.ContextMenu = ContextMenu1
End Sub
Private Sub TreeView1_LostFocus(ByVal sender As Object, ByVal e As System.EventArgs) Handles TreeView1.LostFocus
TreeView1.ContextMenu = Nothing
End Sub
注意:这里没有在ContextMenu菜单添加“更改”项,而是直接更改:即左键单击节点表示
选中,再单击一下就可以编辑了,更改之后单击他处就完成更改,和你在windows中更改文
件名字相似。
Q5: VB.net怎么制作树形菜单啊?
你说的“树形菜单”是指下拉菜单(可以有子菜单)吗?如果是,VB.net提供了MenuStrip控件,在工具箱里能找到,直接就在对应位置打字就可以了,完全是“所见即所得”。







