【发布时间】:2021-06-16 08:20:26
【问题描述】:
我正在尝试另一种密码绑定方式(我知道有不同的方式)
我把一个文本块和一个文本框放在同一个位置
用户将在文本框内书写,其前景将是透明的
文本块将与文本框文本的长度绑定,并根据长度显示“*”。
当我按住一些“眼睛图标”时,文本块将不可见,文本框的前景将是黑色的
问题是当我把它们放在一起时,积木挡住了盒子,我不能在里面写字。
也许只是我没找到的属性,“优先级”什么的
想建议我该怎么做,谢谢:)
【问题讨论】:
我正在尝试另一种密码绑定方式(我知道有不同的方式)
我把一个文本块和一个文本框放在同一个位置
用户将在文本框内书写,其前景将是透明的
文本块将与文本框文本的长度绑定,并根据长度显示“*”。
当我按住一些“眼睛图标”时,文本块将不可见,文本框的前景将是黑色的
问题是当我把它们放在一起时,积木挡住了盒子,我不能在里面写字。
也许只是我没找到的属性,“优先级”什么的
想建议我该怎么做,谢谢:)
【问题讨论】:
问题是当我把它们放在一起时,块会挡住盒子,我不能在里面写字。 可能只是我没找到的属性,“优先级”什么的
IsHitTestVisible 属性。
例子:
<StackPanel>
<TextBox Text="1234"/>
<Grid>
<TextBox x:Name="textBox" Text="1234"/>
<TextBlock Text="***********" Background="Wheat"
IsHitTestVisible="False"/>
</Grid>
<TextBlock Text="{Binding Text, ElementName=textBox}"/>
</StackPanel>
但是!!!
在我看来,使 TextBox 透明更容易。
在这样的实现中,您可以看到输入光标在字段中的位置。
例子:
<StackPanel>
<TextBox Text="1234"/>
<Grid>
<TextBlock Text="***********" Background="Wheat"/>
<TextBox x:Name="textBox" Text="1234"
Background="Transparent"
Foreground="Transparent"
BorderThickness="0"/>
</Grid>
<TextBlock Text="{Binding Text, ElementName=textBox}"/>
</StackPanel>
【讨论】: