如何在Windows 8应用程序的WINRT XAML C#代码中为文本框添加水印。有一个工具提示的直接属性,但同样不适用于Watermark,那么实现这个的最短和最有效的方法是什么?
答案 0 :(得分:6)
转到 ManageNugetPacageManager - >搜索 Winrt Xaml工具包 - >然后安装 winrt xaml工具包
然后转到要添加水印文本框的xaml页面
然后将以下命名空间定义为xaml页面
xmlns:local="using:WinRTXamlToolkit.Controls"
然后转到您要添加的位置 watermarktextbox 在<local:WatermarkTextBox WatermarkText="MyWaterMarkText" />
下面添加以下行
我希望它适合你!
答案 1 :(得分:2)
使用要显示的水印(例如Image control)填充控件,在其上放置一个TextBox(例如将它们放在具有相同行和列的网格中)并将背景设置为Brushes.Transparent
有关画笔和设置TextBox pacground的详细信息,请参阅Set background color of WPF Textbox in C# code。
答案 2 :(得分:2)
您还可以使用WinRT XAML工具包中的WatermarkTextBox来获得开箱即用的解决方案。您还可以使用Popup或通过将水印TextBlock(或任何其他水印UIElement)注入TextBox的可视树中来实现一个作为附加行为(尽管Toolkit尚不支持)。