Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/wpf/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在C#WPF中的文本框中添加tootlip空文本?_Wpf_Xaml_Tooltip - Fatal编程技术网

如何在C#WPF中的文本框中添加tootlip空文本?

如何在C#WPF中的文本框中添加tootlip空文本?,wpf,xaml,tooltip,Wpf,Xaml,Tooltip,我正在尝试向textbox添加工具提示,以在TextChangedEvent中文本输入为空时显示它, 我在这篇文章中尝试过这个解决方案 但我有一个错误: 错误:无法在“触发器”类型的“值”属性上设置“绑定”。只能对DependencyObject的DependencyProperty设置“绑定” 我如何解决这个问题 更新: 此外,我想实现类似的东西(没有MVVM模式): 来源:我不太明白您想要实现什么样的逻辑。 根据我的猜测,这是仅当行为空时才显示工具提示,或者相反,不显示为空 这里有两个

我正在尝试向textbox添加工具提示,以在TextChangedEvent中文本输入为空时显示它, 我在这篇文章中尝试过这个解决方案


但我有一个错误:

错误:无法在“触发器”类型的“值”属性上设置“绑定”。只能对DependencyObject的DependencyProperty设置“绑定”

我如何解决这个问题

更新:


此外,我想实现类似的东西(没有MVVM模式):


来源:

我不太明白您想要实现什么样的逻辑。
根据我的猜测,这是仅当行为空时才显示工具提示,或者相反,不显示为空

这里有两个完全有效的选项

        <Style  x:Key="TextBoxStyle" TargetType="TextBox">
            <Setter Property="Padding" Value="5"/>
            <Setter Property="HorizontalAlignment" Value="Stretch"/>
            <Setter Property="VerticalAlignment" Value="Center"/>
            <Setter Property="Width" Value="200"/>
            <Setter Property="ToolTipService.IsEnabled" Value="False"/>
            <Setter Property="ToolTip">
                <Setter.Value>
                    <ToolTip>
                        <TextBlock Text="Hello World!"/>
                    </ToolTip>
                </Setter.Value>
            </Setter>
            <Style.Triggers>
                <Trigger Property="Text" Value="{x:Static sys:String.Empty}">
                    <Setter Property="ToolTipService.IsEnabled" Value="True" />
                </Trigger>
            </Style.Triggers>
        </Style>


使用:

    <TextBox Style="{DynamicResource TextBoxStyle}"/>

我不太明白您想要实现什么样的逻辑。
根据我的猜测,这是仅当行为空时才显示工具提示,或者相反,不显示为空

这里有两个完全有效的选项

        <Style  x:Key="TextBoxStyle" TargetType="TextBox">
            <Setter Property="Padding" Value="5"/>
            <Setter Property="HorizontalAlignment" Value="Stretch"/>
            <Setter Property="VerticalAlignment" Value="Center"/>
            <Setter Property="Width" Value="200"/>
            <Setter Property="ToolTipService.IsEnabled" Value="False"/>
            <Setter Property="ToolTip">
                <Setter.Value>
                    <ToolTip>
                        <TextBlock Text="Hello World!"/>
                    </ToolTip>
                </Setter.Value>
            </Setter>
            <Style.Triggers>
                <Trigger Property="Text" Value="{x:Static sys:String.Empty}">
                    <Setter Property="ToolTipService.IsEnabled" Value="True" />
                </Trigger>
            </Style.Triggers>
        </Style>


使用:

    <TextBox Style="{DynamicResource TextBoxStyle}"/>

我不太明白您想要实现什么样的逻辑。
根据我的猜测,这是仅当行为空时才显示工具提示,或者相反,不显示为空

这里有两个完全有效的选项

        <Style  x:Key="TextBoxStyle" TargetType="TextBox">
            <Setter Property="Padding" Value="5"/>
            <Setter Property="HorizontalAlignment" Value="Stretch"/>
            <Setter Property="VerticalAlignment" Value="Center"/>
            <Setter Property="Width" Value="200"/>
            <Setter Property="ToolTipService.IsEnabled" Value="False"/>
            <Setter Property="ToolTip">
                <Setter.Value>
                    <ToolTip>
                        <TextBlock Text="Hello World!"/>
                    </ToolTip>
                </Setter.Value>
            </Setter>
            <Style.Triggers>
                <Trigger Property="Text" Value="{x:Static sys:String.Empty}">
                    <Setter Property="ToolTipService.IsEnabled" Value="True" />
                </Trigger>
            </Style.Triggers>
        </Style>


使用:

    <TextBox Style="{DynamicResource TextBoxStyle}"/>



您显示的代码正在运行。错误在别的地方。如果你能给出一个能保证重现你的问题的最小的例子,那就更好了。代码可以正常工作,因为它不会抛出异常。但逻辑上。。。他做了一件完全无法理解的事。您正在将工具提示与字符串进行比较。但这是不同的类型!比较总是错误的。我忘了设置
工具提示
属性“我想实现类似的东西(没有MVVM模式)”-您很可能需要使用数据验证。如果没有MVVM,要做到这一点将非常困难。问题是我没有使用MVVM模式,而您显示的代码正在工作。错误在别的地方。如果你能给出一个能保证重现你的问题的最小的例子,那就更好了。代码可以正常工作,因为它不会抛出异常。但逻辑上。。。他做了一件完全无法理解的事。您正在将工具提示与字符串进行比较。但这是不同的类型!比较总是错误的。我忘了设置
工具提示
属性“我想实现类似的东西(没有MVVM模式)”-您很可能需要使用数据验证。如果没有MVVM,要做到这一点将非常困难。问题是我没有使用MVVM模式,而您显示的代码正在工作。错误在别的地方。如果你能给出一个能保证重现你的问题的最小的例子,那就更好了。代码可以正常工作,因为它不会抛出异常。但逻辑上。。。他做了一件完全无法理解的事。您正在将工具提示与字符串进行比较。但这是不同的类型!比较总是错误的。我忘了设置
工具提示
属性“我想实现类似的东西(没有MVVM模式)”-您很可能需要使用数据验证。如果没有MVVM,这将是非常困难的。问题是我现在没有使用MVVM模式,谢谢。它可以工作,但是你能告诉我如何在按钮点击事件上实现这一点吗?我想每次文本框为空时都显示此工具提示,我有许多文本框?然后你需要一个弹出窗口,而不是工具提示。仅当鼠标光标位于图元上时,才会显示工具提示。现在还不清楚你想要实现什么。因此,当你点击按钮旁边的按钮时,会弹出一个窗口,显示关于哪个文本框为空的信息?或者在每个空的文本框旁边都会弹出这样一个窗口吗?现在,谢谢你,它可以工作了,但是你能告诉我如何通过点击e按钮来实现这一点吗