[WPF 学习] 11.动态绑定VisualBrush
程序员文章站
2024-02-01 11:14:34
需求很简单,就是文本框想要个placeholder的效果,中文的时候显示“姓名”,英文的时候显示“Name”,于是有了以下代码: 然后,动态切换成英文资源的时候,发现他还是中文的,晕。后来改成以下代码就OK了,不知和解? ......
需求很简单,就是文本框想要个placeholder的效果,中文的时候显示“姓名”,英文的时候显示“name”,于是有了以下代码:
<textbox> <textbox.style> <style targettype="textbox"> <style.triggers> <trigger property="text" value=""> <setter property="background"> <setter.value> <visualbrush opacity="0.3" stretch="none" tilemode="none"> <visualbrush.visual> <textblock text="{dynamicresource name}" fontsize="20"></textblock> </visualbrush.visual> </visualbrush> </setter.value> </setter> </trigger> </style.triggers> </style> </textbox.style> </textbox>
然后,动态切换成英文资源的时候,发现他还是中文的,晕。后来改成以下代码就ok了,不知和解?
<textbox> <textbox.style> <style targettype="textbox"> <style.triggers> <trigger property="text" value=""> <setter property="background" value="{dynamicresource vbname}"></setter> </trigger> </style.triggers> </style> </textbox.style> </textbox>