Я создаю программу C # WinForms, и мои текстовые поля не позволяют пользователю последовательно выделять текст по всей программе.
В некоторых местах выделение работает нормально: вы вводите что-то в поле, нажимаете и перетаскиваете текст, и оно подсвечивает место, куда вы перетаскивали.
В других местах при нажатии и перетаскивании текст не выделяется. Единственный способ сделать это - дважды щелкнуть текст.
Я не изменил никаких свойств по умолчанию для этих текстовых полей и не перепутал их с прослушивателями событий. Я разместил совершенно новые текстовые поля в разных местах, и они ведут себя по-разному.
Мне интересно, связано ли это со свойствами формы, в которой содержится TextBox
, так как кажется, что либо все текстовые поля в конкретной форме работают, либо нет. Однако, насколько я могу судить, свойства выглядят одинаково по всем направлениям, и я никогда не помню, чтобы что-то менять.
Мне кажется, что это происходит случайно. Я не могу найти информацию по этой теме. Кто-нибудь знает, о чем я говорю?
РЕДАКТИРОВАТЬ: Хорошо, я выяснил, где проблема, но я все еще не знаю, как ее исправить.
Это происходит только в формах, которые были добавлены в SplitContainer
в моем главном окне, например:
myForm.TopLevel = false;
this.splitContainer.Panel2.Controls.Add(myForm);
myForm.Show();
РЕДАКТИРОВАТЬ 2: Теперь я знаю, что здесь возникает та же проблема: Windows Forms: невозможно щелкнуть, чтобы сфокусировать MaskedTextBox в форме без верхнего уровня . Принятый ответ бесполезен для меня, а другие ответы кажутся непрактичными, так как мне пришлось бы добавлять обработчики событий в каждое текстовое поле ...