首页 > 解决方案 > WPF - 触发文本框点击

问题描述

我正在尝试编写一个 xaml 片段,当它获得/失去焦点时,它将设置我的 TextBox 的文本。目前它看起来像这样:

<TextBox Name="TextBoxLogin" HorizontalAlignment="Left" Height="25" TextWrapping="Wrap" Text="TextBox" VerticalAlignment="Top" Width="160">
                <TextBox.Style>
                    <Style TargetType="TextBox">
                        <Style.Triggers>
                            <Trigger Property="IsMouseCaptured" Value="True">
                                <Setter Property="Text" Value="test"/>
                            </Trigger>
                        </Style.Triggers>
                    </Style>
                </TextBox.Style>
            </TextBox>

但是由于某种原因,每当我单击它时,文本都不会改变。我想知道为什么以及我有哪些选择可以让它发挥作用。我还尝试了其他属性,例如 IsStylusCaptured 和 IsFocused,它们也不起作用。

标签: wpfxamltextbox

解决方案


问题很简单,您Text在第一行设置属性:( 要么设置它,STyle要么不设置它:

 <TextBox Name="TextBoxLogin" HorizontalAlignment="Left" Height="25" TextWrapping="Wrap" VerticalAlignment="Top" Width="160">
            <TextBox.Style>
                <Style TargetType="TextBox">
                <Setter Property="Text" Value = "TextHEre"/>
                    <Style.Triggers>
                        <Trigger Property="IsMouseCaptured" Value="True">
                            <Setter Property="Text" Value="test"/>
                        </Trigger>
                    </Style.Triggers>
                </Style>
            </TextBox.Style>
  </TextBox>

推荐阅读