我想让一个标签控件有一个"x"(关闭按钮)和"+"(新标签按钮).我找到了一个添加a的解决方案x button,标签现在看起来像这样:
但我想+现在添加一个黑色圆圈的位置.我不知道如何,我尝试绘制Paint最后一个标签的事件,如下所示:
var p = tabs.TabPages[tabs.TabCount - 1];
p.Paint += new PaintEventHandler(tab_OnDrawPage);
private void tab_OnDrawPage(object sender, PaintEventArgs e)
{
// e.ClipRectangle.
e.Graphics.DrawString("+",
new Font("verdana",
10,
FontStyle.Bold),
Brushes.Black,
e.ClipRectangle.X + 10,
e.ClipRectangle.Y + 10);
}
Run Code Online (Sandbox Code Playgroud)
但它并没有显示任何吸引力.我想这与我传递给他们的位置有关DrawString(),但我不知道要使用的正确位置.我使用+10将它从最后一个标签中拉出来.如何解决?我自己没有做任何自定义绘图,我正在学习它.
我将margin和padding设置为0 0 0 0,但这对我的TabControls没有任何影响.看:

这就是我所说的.我想把边界粘在一起.
我怎样才能做到这一点?
@Henk Holterman - 是的,它有什么问题?
这些标签在边框和内部控件之间有一个填充.有没有办法删除这个填充?
这是必要的,因为如果停靠在父容器中TabControl将看起来很糟糕.
我尝试了一些方法覆盖,但它没有用.