我有一个RichTextBox
在程序开始时可以集中精力。用户键入一定数量的字符后,我想阻止他们更改/添加/ etc其他任何文本框。
最初我把它写成Java应用程序并使用userInputBox.setFocusable(false)
,但我找不到一种等效的方法来以编程方式在C#中更改它。我正在构建一个Windows窗体应用程序。我没有任何其他容器或对象,我希望用户与之交互,因此我无法使用whatever.Focus()
将其从文本框中拉出来。感谢。
答案 0 :(得分:2)
C#有一个在winforms中广泛使用的事件模型。
您可以通过在其他控件上调用Focus()
来处理控件的GotFocus
事件以使其失去焦点。
答案 1 :(得分:1)
设置ReadOnly = true
或Enabled = false
应该可以解决问题,除非你真的需要控件不可聚焦,在这种情况下,Oded有一个很好的答案。