This question показал мне, как добавить текст водяного знака в свой TextBox. Я попытался реализовать его в своем проекте, но он заменяет фон моего TextBox.Как добавить фон в текстовое поле cue banner
Поскольку моя панель имеет другой цвет, цвет панели отображается через текстовое поле. Как я могу установить это правильно?
Я попытался установить фон метки на белый, но это не работает, потому что оно не растянуто.
<TextBox>
<TextBox.Style>
<Style TargetType="TextBox" xmlns:sys="clr-namespace:System;assembly=mscorlib">
<Style.Resources>
<VisualBrush x:Key="CueBannerBrush" AlignmentX="Left" AlignmentY="Center" Stretch="Uniform">
<VisualBrush.Visual>
<!-- set the background to white -->
<Label Content="Search" Foreground="LightGray" Background="White"/>
</VisualBrush.Visual>
</VisualBrush>
</Style.Resources>
<Style.Triggers>
<Trigger Property="Text" Value="{x:Static sys:String.Empty}">
<Setter Property="Background" Value="{StaticResource CueBannerBrush}" />
</Trigger>
<Trigger Property="Text" Value="{x:Null}">
<Setter Property="Background" Value="{StaticResource CueBannerBrush}" />
</Trigger>
<Trigger Property="IsKeyboardFocused" Value="True">
<Setter Property="Background" Value="White" />
</Trigger>
</Style.Triggers>
</Style>
</TextBox.Style>
</TextBox>
Это дает следующее:
Но установка Stretch для заполнения дает этот результат с растянутым текстом:
является то, что вид [водяные текстового поля] (http://stackoverflow.com/a/21673718/2998271) вы пытаетесь реализовать? нет? – har07
Да, это так. Я только что нашел этот пост, и это казалось самым простым и очевидным решением, которое легко понять. Да, есть больше вариантов, которые я могу загрузить или воссоздать, но мне было просто интересно узнать об этом конкретном сообщении. – Marnix