Avalonia如何实现一个带水印的TextBox Avalonia水印提示

admin 百科 12
Avalonia 中实现 TextBox 水印最简单可靠的方式是使用内置 Watermark 属性,支持字符串、TextBlock 或任意控件,自动管理显示/隐藏逻辑,无需自定义模板或手动绑定。

Avalonia如何实现一个带水印的TextBox Avalonia水印提示-第1张图片-佛山资讯网

在 Avalonia 中实现带水印(Placeholder)的 TextBox,最简单可靠的方式是使用内置的 Watermark 属性 —— 它专为此场景设计,无需自定义控件或模板。

直接使用 Watermark 属性

Avalonia 的 TextBox 原生支持 Watermark 属性,会在文本为空且未获得焦点时显示提示文字,获得焦点或输入内容后自动隐藏,行为符合主流 UI 习惯。

  • 支持字符串、TextBlock 或任意控件(如带图标+文字的组合)
  • 样式可全局或局部定制(例如颜色、字体大小),默认使用 ThemeAccentBrush 的淡色变体
  • 无需绑定、触发器或代码逻辑,开箱即用

示例 XAML:




  
    
      
      
    

  

自定义水印样式(可选)

若需调整水印颜色、字体或动画效果,可通过 TextBox.WatermarkTemplate 或重写主题资源。常用方式是覆盖 TextBox.WatermarkForeground 资源:

标签: go 多语言 本地化 区别

发布评论 0条评论)

还木有评论哦,快来抢沙发吧~