【问题标题】:Implementation for entering a password: How to click on the TextBox located under the TextBlock?输入密码的实现:如何点击位于TextBlock下的TextBox?
【发布时间】:2021-06-16 08:20:26
【问题描述】:

我正在尝试另一种密码绑定方式(我知道有不同的方式)

我把一个文本块和一个文本框放在同一个位置

用户将在文本框内书写,其前景将是透明的

文本块将与文本框文本的长度绑定,并根据长度显示“*”。

当我按住一些“眼睛图标”时,文本块将不可见,文本框的前景将是黑色的

问题是当我把它们放在一起时,积木挡住了盒子,我不能在里面写字。

也许只是我没找到的属性,“优先级”什么的

想建议我该怎么做,谢谢:)

【问题讨论】:

    标签: c# wpf textbox textblock


    【解决方案1】:

    问题是当我把它们放在一起时,块会挡住盒子,我不能在里面写字。 可能只是我没找到的属性,“优先级”什么的

    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>
    

    【讨论】:

      【解决方案2】:

      只有您应该更改控件​​代码位置!

      更改

      【讨论】:

      • 这可以通过多种方式进行调整:ZIndex、IsHitTestVisible、TextBox 透明等。
      猜你喜欢
      • 2013-12-13
      • 1970-01-01
      • 2013-10-07
      • 1970-01-01
      • 2021-08-28
      • 1970-01-01
      • 1970-01-01
      • 2020-03-18
      • 2018-05-28
      相关资源
      最近更新 更多