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