Форум программистов, компьютерный форум, киберфорум
Наши страницы

C#: WPF, UWP и Silverlight

Войти
Регистрация
Восстановить пароль
 
КВА696
37 / 37 / 6
Регистрация: 20.04.2014
Сообщений: 656
Завершенные тесты: 2
#1

Если TextBox пуст, написать в нем что-либо серым текстом - C# WPF/.NET 4.x

04.05.2015, 14:39. Просмотров 495. Ответов 3
Метки нет (Все метки)

Есть TextBox который привязан к значению double Плотность Хотелось бы что когда поле пустое то внутри было написано плотность серыми буквами(Как нынче на сайтах когда слово логин в текстбоксе написано), а при нажатии или заполнено поле исчезло слово. Как это реализовать?

Пока что в голове изменить double на стринг и если пусто то написать плотность но очень бы не хотелось бы менять double чтобы проверку не ставить.

XML
1
 <TextBox x:Name="Плотность" HorizontalAlignment="Center" Height="25" Margin="14,302,78,0" TextWrapping="Wrap" Text="{Binding  Path=Плотность, Source={StaticResource Material}, UpdateSourceTrigger=PropertyChanged}" VerticalAlignment="Top" Width="200"   />
C#
1
2
        public double _Плотность;
        public double Плотность { get { return _Плотность; } set { _Плотность = value; OnPropertyChanged("КоэфМеталла"); OnPropertyChanged("НормаРасхода"); } }
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
04.05.2015, 14:39
Я подобрал для вас темы с готовыми решениями и ответами на вопрос .NET 4.x Если TextBox пуст, написать в нем что-либо серым текстом (C# WPF):

Обработка случая, когда TextBox пуст - C# WPF
С помощью textbox-ов заполнятся таблица в datagridview,если один из textbox-ов пуст,при нажатии на кнопку нужно вывести сообщение об...

Как парсить данные с сайта при каких-либо изменениях на нем - C#
Есть сайт с объявлениями. Как парсить данные в онлайн режиме. Например, человек добавил объявление и об этом сразу узнала прога. Доступ...

Выдать сообщение, если TextBox пуст - C#
private void button1_Click(object sender, EventArgs e) { if (texBox1.text != &quot;&quot;) { ...

Прерывание остальных действий если TextBox пуст - C#
Вот еще возникла проблема, Если текстбокс не заполнен,то все остальные действия прерываются(при нажатии кнопки) Т.е. нажали button1. ...

Закрасить фон TextBox цветом, если он пуст - C#
Всех с праздниками! У меня два вопроса. Есть вот такой код, который работает для трёх текстбоксов. В них должны вводиться только цифры. ...

.NET 4.x Выдать запрос на сохранение текста в файл, если TextBox не пуст - Visual Basic .NET
Я только начинаю изучать программирование, поэтому не пинайте за нубские вопросы))) В некоторых программах есть информационное окно,...

3
iecava
26 / 26 / 5
Регистрация: 23.09.2012
Сообщений: 83
04.05.2015, 19:32 #2
Лучший ответ Сообщение было отмечено автором темы, экспертом или модератором как ответ
Почитайте - должно помочь:
http://potapov-ae.blogspot.ru/2012/11/wpf-textbox-combobox.html

Добавлено через 6 минут
В "TextBox" всеравно отображается "string" а не "double"
1
КВА696
37 / 37 / 6
Регистрация: 20.04.2014
Сообщений: 656
Завершенные тесты: 2
04.05.2015, 21:27  [ТС] #3
iecava, ну в данном случае при биндинге появляется красная рамка при вводе текста. Спс за ссылка сейчас прочитаю

Добавлено через 1 час 24 минуты
iecava, Почти то что надо но вот проблемма в том что прикреплено значение double оно равно 0 и поэтому на это нее действует, надо подумать как лучше поступить тогда
0
Topotun
89 / 48 / 7
Регистрация: 16.09.2012
Сообщений: 207
06.05.2015, 20:18 #4
Тебе нужно использовать DataTrigger. Он позволяет тебе менять свойства (в данном случае цвет текста в текстбоксте) в зависимости от данных, которые ты получаешь в биндинге. Так же, можно твою плотность сделать nullable свойством, тогда будет гораздо проще. И если будет null, то дататриггер его поймает и сразу же изменит цвет текста. Но если ты хочешь оставить ноль, то можно (кажется) использовать конвертер, в него передавать значение, конвертер будет определять значение и возвращать, например true или false. Если true, то ты меняешь цвет. Я точно уже не помню, может быть и без конвертера можно будет обойтись. В общем, если ты хочешь менять свойства элементов, в зависимости от данных, то дружи с DataTrigger'ом. он тебе поможет.
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
06.05.2015, 20:18
Привет! Вот еще темы с ответами:

Дано натуральное число n. Отбросить в нем все цифры, стоящие правее самой правой единицы либо оставить число без изменений, если единицы в нем нет - C++
Дано натуральное число n. Отбросить в нем все цифры, стоящие правее самой правой единицы либо оставить число без изменений, если единицы в...

Что делать, если windows пишет: либо требуется обновленная видеокарта, либо видеокарта, совместимая с Direct3D - Windows 7
Запустила в безопасном режиме с командной строкой.. и вместо заставки (хотя я не знаю, что там должно быть) пишет: либо требуется...

Установка серой подсказки в TextBox, если в нем отсутствует текст - Visual Basic .NET
Есть ли такая возможность в VB.Net: в TextBox полупрозрачным текстом написана подсказка, для чего этот TextBox предназначен? Пример в...

Как вывести что-либо в textBox при нажатии на кнопку? - C#
Всем привет. Создаю калькулятор. С горем по полам сделал форму. Теперь хочу вывести что-либо на дисплей при нажатии на кнопку (например на...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru