C#如何去掉虚线框

2025-03-22 04:29:34
推荐回答(2个)
回答1:

方法一 重写控件类
至于要怎么重写 要看什么控件

方法二 手动设置控件焦点
虚线框其实不是C#的问题 windows下可以被点击的东西被鼠标点击就会有虚线框
最简单的方法 例如:
窗体中有一个按钮A和一个 Visble = false 的按钮B A有实际用处 当鼠标点击A
A就会有虚线框 但在A的点击事件中把B设置为鼠标选择 那么A的虚线就被取消了

重写控件类是一个可以更好的解决办法 但实现起来十分麻烦 还要针对不同的控件进行重写

回答2:

添加控件的Enter事件

在里面转移焦点到其它控件(如果没有其他控件就拖个Lable控件)

比如转移到Lable控件

private void trackbar1_Enter(object sender, EventArgs e)
{
this.lable1.Focus();
}

此方法适用于所有拥有Enter事件的控件