2012-05-21 2 views
2

Это элемент управления TextBox на экране входа в систему, где TextBox содержит имя пользователя. Я хочу, чтобы TextBox выполнялся следующим образом:Создать водяной знак WPF в чистом XAML

  • Когда контент пуст, контент должен быть установлен в «Имя пользователя».

  • При нажатии на TextBox я хочу, чтобы содержимое было установлено на "" i.e; ничего (если контент уже отредактирован пользователем).

Это довольно стандартная функция в настоящее время, что-то вроде этого wordpress login (в верхней части страницы). coudn't думаю, лучший пример, чем это я боюсь :)

Так или иначе, я уже сделал это с помощью ViewModel, и он работает хорошо, но я хотел бы знать, может ли это сделайте исключительно с конца XAML. Никакой бизнес-логики не было, поэтому я думаю, что было бы лучше сделать это без виртуальной машины.

+1

Возможный дубликат [Watermark TextBox в WPF] (http://stackoverflow.com/questions/833943/watermark-textbox-in-wpf) – Robaticus

+0

@Robaticus: Эти ответы отображаются только с логикой кода, я хочу быть в состоянии для этого с чистым XAML. – Drahcir

+0

Я сомневаюсь, что вы сможете сделать это в «чистом xaml». Кроме того, в приведенном примере единственным кодом является конвертер видимости. В игре нет бизнес-логики или viewmodel. – Robaticus

ответ

1

Вы пробовали искать в Интернете? Этот пост stackoverflow (первый в моих результатах) выглядит так, как если бы он помог Watermark/hint text/placeholder TextBox in WPF

+0

Спасибо, но эти ответы показывают только, как это сделать в коде. Я хочу иметь возможность делать это исключительно с XAML. – Drahcir

+0

Существует много преимуществ при использовании на xaml, но также хорошо использовать код. Если вы ищете чистое решение xaml, вам придется использовать DataTriggers и/или изменения VisualState –

+0

Да, код в порядке, я думаю, и я уже сделал это так, я просто подумал, что может быть более аккуратным сделать все это в XAML. Ссылка на проект кода в BA - довольно хороший способ. – Drahcir

1

Extended WPF Toolkit имеет Watermark Textbox, что будет делать только то, что вы просите в чистом XAML. Есть и другие библиотеки.

Хорошо, что с помощью расширенного набора инструментов WPF вы можете забрать его на Nuget и установить и установить обновления непосредственно через Visual Studio.

Смежные вопросы