wpf 输入框 在输入时去除水印

wpf ScrollViewer 在输入数据时去除水印

在WPF(Windows Presentation Foundation)中,ScrollViewer控件通常用于显示滚动内容。如果你想在ScrollViewer中使用数据输入(例如文本输入),并且希望在输入时去除水印(通常指的是文本框中的提示文字),你可以通过以下几种方式实现:

使用样式和触发器(推荐)

最简单且最常见的方法是使用WPF的样式和触发器来控制水印的显示和隐藏。这种方法不需要修改任何属性值,而是通过样式和触发器来动态地显示或隐藏水印。

复制代码
<ScrollViewer>
    <TextBox Style="{StaticResource WatermarkStyle}" />
</ScrollViewer>

在资源字典中定义WatermarkStyle

复制代码
<Style x:Key="WatermarkStyle" TargetType="{x:Type TextBox}">
    <Setter Property="Template">
        <Setter.Value>
            <ControlTemplate TargetType="{x:Type TextBox}">
                <Grid>
                    <TextBox x:Name="textSource" 
                             Text="{Binding Text, RelativeSource={RelativeSource TemplatedParent}, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}" 
                             Background="Transparent" 
                             Padding="5,2" 
                             VerticalContentAlignment="Center"/>
                    <Label Visibility="Collapsed" x:Name="watermark" IsHitTestVisible="False" Padding="5,0">请输入内容</Label>
                </Grid>
            </ControlTemplate>
        </Setter.Value>
    </Setter>
    <Style.Triggers>
        <Trigger Property="Text" Value="">
            <Setter TargetName="watermark" Property="Visibility" Value="Visible"/>
        </Trigger>
        <Trigger Property="IsKeyboardFocused" Value="True">
            <Setter TargetName="watermark" Property="Visibility" Value="Collapsed"/>
        </Trigger>
    </Style.Triggers>
</Style>

在这个方法中,当文本框为空且未获得焦点时,水印可见;当文本框获得焦点或有文本时,水印隐藏。这样,你就可以在用户输入时自动去除水印了。

相关推荐
听麟19 小时前
HarmonyOS 6.0+ 跨端智慧政务服务平台开发实战:多端协同办理与电子证照管理落地
笔记·华为·wpf·音视频·harmonyos·政务
听麟1 天前
HarmonyOS 6.0+ APP AR文旅导览系统开发实战:空间定位与文物交互落地
人工智能·深度学习·华为·ar·wpf·harmonyos
聆风吟º2 天前
CANN hccl 深度解析:异构计算集群通信库的跨节点通信与资源管控实现逻辑
人工智能·wpf·transformer·cann
无心水2 天前
分布式定时任务与SELECT FOR UPDATE:从致命陷阱到优雅解决方案(实战案例+架构演进)
服务器·人工智能·分布式·后端·spring·架构·wpf
LZL_SQ2 天前
HCCL测试框架中AllReduce边界条件测试设计深度剖析
wpf·cann
User_芊芊君子3 天前
【分布式训练】CANN SHMEM跨设备内存通信库:构建高效多机多卡训练的关键组件
分布式·深度学习·神经网络·wpf
就是有点傻4 天前
WPF按钮走马灯效果
wpf
zuozewei4 天前
虚拟电厂聚合商平台安全技术体系深度解读
安全·wpf
极客智造4 天前
WPF 自定义控件:AutoGrid 实现灵活自动布局的网格控件
wpf
极客智造4 天前
WPF Grid 布局高效扩展:GridHelpers 附加属性工具类全解析
wpf