none
treeview问题 RRS feed

  • 问题

  •   Private Sub TreeView1_NodeMouseClick(ByVal sender As Object, ByVal e As System.Windows.Forms.TreeNodeMouseClickEventArgs) Handles TreeView1.NodeMouseClick
    
            TreeView1.Nodes(0).Nodes(0).ForeColor = Color.Red
    
            If e.Node.Text = "Delete Exist" Then
                Form2.Show()
                Me.Close()
            ElseIf e.Node.Text = "General" Then
                Form3.Show()
                Me.Close()
            End If
        End Sub

    1.   TreeView1.Nodes(0).Nodes(0).ForeColor = Color.Red

    这个代码是为了标记目前使用的界面,假设现在的界面是add new界面,这个nodes的字体颜色就会变成红色。但当我按下其他的node时,就会变成黑         色字体。有什么办法可以不改变我设定的颜色吗,即使按下其他的nodes??

    2.  当我按下delete exist的子node时,好像是因为已经展开的关系,程式要慢几秒才可以跳转到form2.而按下General子node时,就立刻跳转。。是什么原因??

    3. 我想在窗体运行时,就展开全部treview的nodes..我在form1_load事件写 TreeView1.ExpandAll()。。但不会展开全部。但我在button1写,却没有问题???

    2012年3月23日 2:10

答案

  • 问题1:建议你应该直接使用e.Node.ForeColor=Color.Red而不是人为指定某个节点。

    问题3:

    我直接拖拽了一个TreeView上去,加了如下节点:

    在form_Load时候尚未出现你说的问题。如果你坚持出现问题,

    请尝试:1)直接写在New(构造函数InitializeComponent()之后)。2)在form_Load写上这句话之后,直接调用Application.DoEvents()【两个方法任选其一】。

    或者你直接点击“给我写信”,把项目发我邮箱我看看呢?


       QQ我:讨论(Talk)
    下载MSDN桌面工具(Vista,Win7)
    我的博客园
    慈善点击,点击此处

    2012年3月23日 2:56
    版主