当前位置:编程问答 > C#/ASP.NET >

C#问题 各位大哥大姐们请帮帮忙啊!!!!!!

问题:

左边Treeview  右边RichTextBox  点击左边的“鳃的构造”节点。右边文章中“鳃的构造”文字颜色变化,同时“鳃的构造”节点的子节点在右边文章中相应的文字颜色也发生变化。怎么实现?

 

要是在richtextbox中父节点箭头指向子节点 怎么实现?

追问:第一个对了。

第二个就是那些加亮的关键字如果在treeview中是父节点和子节点的关系,那在richtextbox中用箭头从父节点(加亮的关键字)指向子节点(加亮的关键字)

答案:不是太明白你的意思。

我说一下我的理解,你看对不对。右边的richtexbox的文章内容是一开始就打开的。左边的treeview类似于目录或者关键字的意思。当点击左边的treeview的节点的时候 文章内容里面的对应关键字就被加亮,同时如果当前的treeview的节点下面有子节点,那么文章里面的子节点内容也会被加亮。是这个意思吗?

 

要是在richtextbox中父节点箭头指向子节点 怎么实现? 这句话不是太理解什么 意思。richtexbox里面没有节点的概念。

你的TreeView的AfterSelect事件里面加入如下代码(注意你的控件的名称,这里是treeView1和richTextBox1):

private void treeView1_AfterSelect(object sender, TreeViewEventArgs e)
      {
            string s = e.Node.Text;
            int i = richTextBox1.Text.IndexOf(s);
            while (i > -1)
            {
                richTextBox1.Select(i, s.Length);
                richTextBox1.SelectionBackColor = Color.Red;
                i = richTextBox1.Text.IndexOf(s, i + 1);
            }

            foreach (TreeNode node in e.Node.Nodes)
            {
                s = node.Text;
                i = richTextBox1.Text.IndexOf(s);
                while (i > -1)
                {
                    richTextBox1.Select(i, s.Length);
                    richTextBox1.SelectionBackColor = Color.Red;
                    i = richTextBox1.Text.IndexOf(s, i + 1);
                }
            }
        }

解决了你第一个问题,第二个还在调试中(需求有点怪)...

selectedindexchange 事件

再去读相应的内容

 

 

上一个:如何用C#编写 实现数据备份和还原
下一个:C#中,中缀表达式如何转化为后缀表达式?

CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,