Как всегда в WPF, есть много способов достичь вашей цели.
Возможно, самый чистый способ - это создать подкласс TextBox
и добавить новое свойство с именем HintText
. Шаблон для вашего элемента управления будет отображать HintText
(возможно, курсивом и серым цветом), пока Text
пуст (""
). В противном случае он будет отображать Text
точно так же, как обычный TextBox
.
Альтернативой, которая не требует написания собственного элемента управления, является повторный шаблон TextBox
и использование свойства Tag
для хранения текста подсказки.
Другая альтернатива - написать UserControl
, который объединяет TextBox
с, скажем, TextBlock
внутри того же Grid
. TextBlock
будет содержать текст подсказки и будет отображаться, только если TextBox
'Text
пуст. Это, вероятно, легче всего достичь, но также является наименее гибким.