1C#编程实现RICHTEXTBOX鼠标点击选择一行
- 格式:pdf
- 大小:90.35 KB
- 文档页数:4
这是 C#学习记录,基本材料来源于网络。
文件引入
using System.Xml; using System.Xml.Linq; using System.IO; 添加引用 RICHTX32.OCX,文件位置在编程环境安装后的\windows\system32\目录下。 using RichTextLib;
//为在文本框中显示文件做准备 //提取子节点数组 XmlNodeList xnf1 = xe.ChildNodes; //遍历子节点数组 foreach (XmlNode xn2 in xnf1) {
//显示子节点文本 temp += xn2.InnerText; } //输出一个空行,显示格式需要 temp += "\n";
} //在文本框中文件显示 rTxtMenu.Text = temp;
}
调入目录
private void btnMenu_Click(object sender, EventArgs e)//调入目录 { readXML(ref xmlFile); }
附件:目录.xml 文件
<文件管理> <目录 /> <目录 属性="只读"> <一级目录>系统引用 </一级目录> </目录> <目录 属性="只读"> <一级目录>全局变量定义 </一级目录> </目录> <目录 属性="只读"> <一级目录>创建文件、添加基本数据</一级目录> </目录> <目录 属性="只读"> <一级目录>追加数据 </一级目录> </目录> <目录 属性="只读"> <一级目录>变量置空 </一级目录> </目录> <目录 属性="只读"> <一级目录>变量填充赋值 </一级目录> </目录> <目录 属性="只读"> <一级目录>处方内容回显 </一级目录> </目录> <目录 属性="只读"> <一级目录>更新数据 </一级目录> </目录> <目录 属性="只读"> <一级目录>鼠标跟踪弹出菜单 </一级目录> </目录> <目录 属性="只读"> <一级目录>动态创建单选按钮组</一级目录> </目录> <目录 属性="只读"> <一级目录>设计说明 </一级目录> </目录> <目录 属性="只读"> <一级目录>按钮事件 </一级目录> </目录> <目录 属性="只读"> <一级目录>动态生成 3 个单选按钮 </一级目录> </目录> <目录 属性="只读">
<一级目录>查询 XML 文件</一级目录> </目录> <目录 属性="只读">
<一级目录>程序动作 </一级目录> </目录> </文件管理>
if (flag == row) { resultStr = str; break; } flag++;
} //确定有效起始位置 currentPos = allStr.IndexOf(resultStr); rTxtMenu.Select(currentPos, resultStr.Length);
基本定义
RichTextBox 控件:rTxtMenu Button 控件:btnMenu
鼠标单击目录
private void rTxtMenu_Click(object sender, EventArgs e)//鼠标单击目录 {
//rTxtMenu.SelectionBackColor = Color.Red; //取得光标当前位置 int currentPos = rTxtMenu.SelectionStart; //取得当前行号 int row = rTxtMenu.GetLineFromCharIndex(currentPos); //取得全部文本 rTxtMenu.SelectAll(); string allStr = rTxtMenu.SelectedText; //替换间隔符 tempStr = allStr.Replace("\n", " "); tempStr = tempStr.Replace("\t", ""); //取得当前行 string[] strArr = tempStr.Split(" ".ToCharArray()); //"\n".ToCharArray() int flag = 0; string resultStr = ""; foreach(string str in strArr) {
}
目录内容回显函数Βιβλιοθήκη public void readXML(ref string xmlFile)//目录内容回显 { //清空显示框 rTxtMenu.Text = ""; string temp = ""; //定义 XmlDocument XmlDocument xmlDoc = new XmlDocument(); //xml 文件载入 xmlDoc.Load(xmlFile); //选择根节点 XmlNode xn = xmlDoc.SelectSingleNode("文件管理"); //提取节点数组 XmlNodeList xnl = xn.ChildNodes; //遍历节点数组 foreach (XmlNode xnf in xnl) { XmlElement xe = (XmlElement)xnf;