wpf之在textbox默认显示文字,输入文字后消失


最近项目中需要实现一个效果,类似web中的text输入框的placehodler属性:默认情况下显示一些文字,当输入新的文字后自然消失

这里需要对原本textbox的模板进行小的修改:直接看一下代码

<TextBox Height="80" Width="450" x:Name="web_param_addr_tbx" Margin="5,0,0,0"  >
                        <TextBox.Resources>
                            <VisualBrush x:Key="HelpBrush" TileMode="None" Opacity="0.3" Stretch="None" AlignmentX="Left" AlignmentY="Top">
                                <VisualBrush.Visual>
                                    <TextBlock FontStyle="Normal" FontSize="14"  TextWrapping="Wrap" Width="430" Text='名称和域名之间用"半角冒号"分割,多个测试地址以"半角分号"分割.例如:广电:www.jscndata.com;大电视:ww.bigtv.cn'/>
                                </VisualBrush.Visual>
                            </VisualBrush>
                        </TextBox.Resources>
                        <TextBox.Style>
                            <Style TargetType="TextBox">
                                <Setter Property="Width" Value="450"/>
                                <Setter Property="Height" Value="64"/>
                                <Setter Property="FontFamily" Value="{StaticResource fontFamily}"/>
                                <Setter Property="FontSize" Value="14"/>
                                <Setter Property="Foreground" Value="#FF333333"/>
                                <Setter Property="BorderBrush" Value="#8F666666"/>
                                <Setter Property="TextWrapping" Value="Wrap"/>
                                <Setter Property="AcceptsReturn" Value="True"/>
                                <Setter Property="VerticalScrollBarVisibility" Value="Visible"/>
                                <!--<Setter Property="Template">
                                    <Setter.Value>
                                        <ControlTemplate TargetType="TextBox">
                                            <Border x:Name="Bd" BorderThickness="{TemplateBinding BorderThickness}"
                        BorderBrush="{TemplateBinding BorderBrush}"  SnapsToDevicePixels="true"
                    >
                                             <ScrollViewer x:Name="PART_ContentHost" RenderOptions.ClearTypeHint="Enabled"
                      SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}"/>
                                            </Border>
                                        </ControlTemplate>
                                    </Setter.Value>
                                </Setter>-->
                                <Style.Triggers>
                                    <Trigger Property="Text" Value="{x:Null}">
                                        <Setter Property="Background" Value="{StaticResource HelpBrush}"/>
                                    </Trigger>
                                    <Trigger Property="Text" Value="">
                                        <Setter Property="Background" Value="{StaticResource HelpBrush}"/>
                                    </Trigger>
                                </Style.Triggers>
                            </Style>
                        </TextBox.Style>
                    </TextBox>

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM