【发布时间】:2019-08-20 14:10:43
【问题描述】:
我想在点击后立即显示ToolTip 或Button。 ToolTip 应该会在短时间内消失。这只是作为用户的反馈需要,因为单击 Button 会导致将字符串复制到剪贴板。
我使用 Button-Behavior 通过 Click-Event 显示 Button 的 Tooltip。为了显示ToolTip,我将其IsOpen 属性设置为true。
class ForceToolTipBehavior : Behavior<Button>
{
protected override void OnAttached()
{
base.OnAttached();
this.AssociatedObject.Click += AssociatedObject_Click;
}
private void AssociatedObject_Click(object sender, System.Windows.RoutedEventArgs e)
{
var tooltip = this.AssociatedObject.ToolTip as ToolTip;
tooltip = new ToolTip();
tooltip.Content = "Log was copied to your Clipboard";
tooltip.IsOpen = true;
}
}
这工作得很好,但ToolTip 保持打开状态。有什么优雅的方法可以让ToolTip 在一秒钟后消失吗?是否可以将ToolTipService 用于该任务?
【问题讨论】:
-
tooltip.AutoPopDelay = x; ?
标签: c# wpf mvvm tooltip attachedbehaviors