C# 避免使用文本框获取用户的焦点
我在Windows窗体应用程序中工作,我有一个文本框,我想避免它成为焦点 现在我使用属性Enable,但它给窗体带来了一个糟糕的外观 我也试过这个C# 避免使用文本框获取用户的焦点,c#,textbox,focus,C#,Textbox,Focus,我在Windows窗体应用程序中工作,我有一个文本框,我想避免它成为焦点 现在我使用属性Enable,但它给窗体带来了一个糟糕的外观 我也试过这个 private void txtMyTextbox_Enter(object sender, EventArgs e) { ActiveControl = objMyOtherControl; } 但是,就像我在事件发生时选择文本框中的单词一样,文本框会丢失选择。如果您想使文本框不可聚焦,但仍然希望能够选择文本,那么您要查找的是属性 以下
private void txtMyTextbox_Enter(object sender, EventArgs e)
{
ActiveControl = objMyOtherControl;
}
但是,就像我在事件发生时选择文本框中的单词一样,文本框会丢失选择。如果您想使文本框不可聚焦,但仍然希望能够选择文本,那么您要查找的是属性 以下是官方文件的摘录: 可以将可编辑的Windows窗体文本框转换为只读文本框 控制例如,文本框可能显示一个通常为 由于应用程序的状态,已编辑但当前可能无法编辑。 要创建只读文本框,请设置TextBox控件的ReadOnly 属性设置为true。当属性设置为true时,用户仍然可以 滚动并突出显示文本框中的文本,不允许更改。A. “复制”命令在文本框中起作用,但“剪切”和“粘贴”命令除外 不是。请注意,ReadOnly属性仅在以下位置影响用户交互: 运行时。您仍然可以在以下位置以编程方式更改文本框内容: 通过更改文本框的文本属性来运行时
将其设置为只读实际上是正确的方法。改变外观是为了通知用户他不应该使用控件,你不应该反抗请参考:为什么不使用标签?他想保持选择文本的能力;不适用于标签。