Сделать TextBox неотредактированным
Я хочу сделать некоторые TextBox
es в моей форме неотредактированными, но я хочу, чтобы text
был ясным (черный не серый), и поэтому я не хочу использовать
myTextBox.Enabled = false;
Как-то я хочу, чтобы он был отключен, но с не серым цветом.
Есть ли у кого-нибудь подсказки?
Ответы
Ответ 1
Используя свойство TextBox.ReadOnly
TextBox.ReadOnly = true;
Для фона без серого вы можете изменить свойство TextBox.BackColor
на SystemColors.Window
Цвет
textBox.BackColor = System.Drawing.SystemColors.Window;
Если для этого свойства установлено значение true, содержимое элемента управления не может быть изменен пользователем во время выполнения. Если для этого свойства установлено значение true, вы все еще может установить значение свойства Text в коде. Вы можете использовать это вместо отключения элемента управления с помощью свойства Enabled для разрешить копирование содержимого и всплывающие подсказки.
Ответ 2
Используйте свойство ReadOnly в TextBox.
myTextBox.ReadOnly = true;
Но помните: Свойство TextBoxBase.ReadOnly
Если для этого свойства установлено значение true, содержимое элемента управления не может быть изменен пользователем во время выполнения. Если для этого свойства установлено значение true, вы можете установить значение свойства Text в коде. Вы можете использовать эту функцию вместо отключения элемента управления с помощью Включено свойство, позволяющее копировать содержимое и всплывающие подсказки. показано на рисунке.
Ответ 3
Вы можете попробовать:
textBox.ReadOnly = true;
textBox.BackColor = System.Drawing.SystemColors.Window;
Последняя строка необходима только в том случае, если вам нужен не серый цвет фона.
Ответ 4
Если вы хотите, чтобы ваш TextBox
uneditable, вы должны сделать его ReadOnly.
Ответ 5
Если вы хотите сделать это, используя XAML, установите свойство isReadOnly
в true
.
Ответ 6
Просто установите в XAML:
<TextBox IsReadOnly="True" Style="{x:Null}" />
Таким образом, текст не будет выделен серым цветом.