现在想模仿UltraEdit在鼠标右键点击标签的时候可以弹出菜单对这个标签对应的页面进行操作,但是c#中tabpage对鼠标的响应是在页面内而不是标签上,真是别扭,而且由于我现在采用了动态创建标签的方式,所以如果创建了很多标签之后很难采用鼠标定位的方法来确定哪个标签被鼠标右键点击了,忙了很久也没想出办法,请各位高手帮帮忙吧!!!
解决方案 »
- 一个棘手的问题:我要到一段有html标签的字符中,给这段字符的首字加段样式
- 关于向SQL写入和读取byte[]数组问题
- =============== 窗体的分割
- 一般在写程序时,想看看某个变量的值,或者检查一下输出的结果等是否符合要求,是不是用Console.WriteLine
- 怎么能让一个进程杀不死? 顶的有分:)
- 怎么找到在DATAGRID里嵌入的控件呢?
- 询问??
- 请问重写的对象该怎么引用啊,我这里有一个重写dropDownList
- 2003年,有什么.Net的新书吗(C#方面)
- 什么是c/s结构和b/s结构,有什么区别?
- 如何使用代码来实现对数据库的备份和还原?
- 传日期参数到报表里,小弟菜鸟啊!
private void tabControl1_MouseDown(object sender, System.Windows.Forms.MouseEventArgs e)
{
if(e.Button == MouseButtons.Right)
{
this.contextMenu1.Show(this.tabControl1, new Point(e.X, e.Y));
}
}
private void tabControl1_MouseDown(object sender, System.Windows.Forms.MouseEventArgs e)
{
Point pt = new Point( e.X, e.Y );
for( int i = 0; i < tabControl1.TabCount; i++ )
{
Rectangle recTab = tabControl1.GetTabRect( i );
if( recTab.Contains( pt ) )
Debug.WriteLine( i.ToString() );//do what you want here
}
}