C#中TabControl相关用法
最近在用C#做项目时,用到TabControl这个控件,将学到的东西做个总结:
一、拖一个TabControl控件到窗口上,在控件上点击右键,可以添加选项卡/删除选项卡;或者在属性中找到TabPages,点击进去,可以看到TabPages编辑器,这里也可以添加或移除选项卡,
在右侧的属性里找到Text,可以修改对应选项卡的名称。
二、我想实现右键选中选项卡,并出现菜单:
首先需要添加一个contextMenuStrip1控件,添加需要显示的选项,
其次将TabControl属性中的contextMenuStrip选项绑定为contextMenuStrip1
然后双击响应的选项进入程序中编写相应事件程序。
private void 添加值ToolStripMenuItem_Click(object sender, EventArgs e){int number = tabControl1.TabPages.Count;TabPage page = new TabPage();page.Text = "New"+ (number+1);tabControl1.TabPages.Add(page);this.tabControl1.SelectedTab = page;//显示当前页}
//删除项private void 删除值ToolStripMenuItem_Click(object sender, EventArgs e){if (MessageBox.Show("确定要删除吗?", "提示!", MessageBoxButtons.YesNo) == DialogResult.Yes){tabControl1.TabPages.Remove(tabControl1.SelectedTab);}}
三、TabControl添加MouseDown事件
双击MouseDown,开始写代码:
private void tabControl1_MouseDown(object sender, MouseEventArgs e){if (e.Button == MouseButtons.Right){for (int i = 0; i < tabControl1.TabPages.Count; i++){if (tabControl1.GetTabRect(i).Contains(new Point(e.X, e.Y))){tabControl1.SelectedTab = tabControl1.TabPages[i];}}}}
三、动态添加lable和textbox
TextBox[] textBox = new TextBox[2];Label[] labels = new Label[2];for (int i = 0; i < textBox.Length; i++){textBox[i] = new TextBox();textBox[i].Location = new Point(i * 125 + 40, 7);textBox[i].Size = new Size(80, 25);page.Controls.Add(textBox[i]);在当前页中添加textBoxtextBox[i].BringToFront(); //设置textBox在最顶层}string[] text =new string[] { "min", "max" };for (int i = 0; i < labels.Length; i++){labels[i] = new Label();labels[i].Text = text[i];labels[i].Location = new Point(i * 125 + 5, 8);labels[i].Size = new Size(31, 15);page.Controls.Add(labels[i]);//在当前页中添加labellabels[i].BringToFront(); //设置labels在最顶层}
最后结果:
还有个问题没有搞好,就是重命名,希望大神看到能给点指点。
程序下载:https://download.csdn.net/download/fenglearning/19890278
C#中TabControl相关用法相关推荐
- Python中return相关用法
一.return的简介 return故名思意即返回的作用,返回什么呢?将函数运行结果--你想从相应函数中得到的结果返回到函数调用的位置.通俗的讲就是将调用函数的结果上传. 代码如下: def plus ...
- Java 8中stream相关用法
jdk1.8新加了lambda表达式,可以帮助开发者更好的,更高效的实现一些通常复杂的代码实现 1.list转换map Map<Integer, String> mappedMovies ...
- Java中Date各种相关用法
Java中Date各种相关用法 本文主要介绍Java中Date各种相关用法. AD: Java中Date各种相关用法(一) 1.计算某一月份的最大天数 Java代码 Calendar time=C ...
- C++中容器的分类以及相关用法
C++中容器的分类以及相关用法 C++中的容器类型及使用 容器的分类 array 数组 vector 向量 list 列表 deque队列 关联容器 迭代器 C++中的容器类型及使用 容器的概念: ...
- python static 的用法_Python中static相关知识小结
非 static 编译 不指定额外参数直接编译 Python: $ ./configure $ make 查看所依赖的共享库: $ ldd python linux-vdso.so.1 => ( ...
- mysql中正则表达式的用法_Mysql中正则表达式Regexp常见用法
Mysql中Regexp常见用法 模糊匹配,包含特定字符串 # 查找content字段中包含"车友俱乐部"的记录 select * from club_content where ...
- 【C++】C/C++ 中 static 的用法全局变量与局部变量
C/C++ 中 static 的用法全局变量与局部变量 目录 1. 什么是static? 1.1 static 的引入 1.2 静态数据的存储 2. 在 C/C++ 中static的作用 2.1 总的 ...
- python中str的index什么意思_python中index的用法是什么
index() 一般用处是在序列中检索参数并返回第一次出现的索引,没找到就会报错,比如:>>> t=tuple('Allen') >>> t ('A', 'l', ...
- php foreach是什么,php中foreach的用法是什么
php中foreach的用法是:[foreach ($array as $value) {要执行代码;}],每进行一次循环,当前数组元素的值就会被赋值给$value变量,在进行下一次循环时,将得到数组 ...
最新文章
- 使用ssh连接gitHub
- 在 Linux 上给用户赋予指定目录的读写权限
- 动手打造自己强大的右键菜单
- FieldGroup绑定的日期类型存储格式的问题
- python中文教程-中谷python中文视频教程(全38集)
- i27岁转行java,JavaTM I/O 性能分析[转]
- 阿里技术专家对 SRE 的解读
- 介绍Pro*c编程的经验
- plsq卸载 删除注册表、_win10操作系统下oracle11g客户端/服务端的下载安装配置卸载总结...
- 使用Travis CI自动部署Hexo博客
- js中精度问题以及解决方案
- react redux 简化_Redux 源码解析
- matlab画图标签,Matlab绘图
- 古诗词知识图谱(一)
- 数字频率计的功能及工作原理
- PowerApps 中的 Filter、Search 和 LookUp 函数
- Android 图片查看器选择器 PictureSelector
- mui12搭载鸿蒙,MUI系统最新资讯
- Nginx在CDN加速之后,获取用户真实IP做并发访问限制的方法
- Ensemble Average(系综平均)(集平均)
热门文章
- 解放号测试家亮相西安2016“全国大众创业万众创新活动周”
- SWUST OJ#614求圆柱体的体积
- 浅谈android网络框架——以课程格子的bug为例
- 【CodeForces 1100E】二分答案 | 拓扑排序 | E
- 198页11万字智慧水务平台建设方案(word)
- VMware vSphere Data Protection
- 大数据数仓搭建-大数据用户画像推荐系统搭建
- python 生成对抗网络
- python find 正则表达式_python正则表达式
- XnView:图片管理的工具