【发布时间】:2018-09-10 16:59:05
【问题描述】:
有代码
ToolTip tt;
private void Grid_Loaded(object sender, RoutedEventArgs e)
{
Label l = new Label();
l.Content = "ToolTip";
l.MouseLeftButtonUp += l_MouseLeftButtonUp;
Grid.SetColumn(l, 0);
Grid.SetRow(l, 0);
grid.Children.Add(l);
tt = new ToolTip();
tt.StaysOpen = true;
tt.MouseLeftButtonUp += tt_MouseLeftButtonUp;
tt.Content = "12345";
}
void l_MouseLeftButtonUp(object sender, MouseButtonEventArgs e)
{
tt.IsOpen = true;
}
void tt_MouseLeftButtonUp(object sender, MouseButtonEventArgs e)
{
throw new NotImplementedException();
}
当鼠标点击标签工具提示时显示。然后,如果工具提示鼠标单击 tt_MouseLeftButtonUp 事件永远不会触发。为什么?
【问题讨论】:
-
不确定它是否有效,但您可以尝试将工具提示的 IsHitTestVisible 属性设置为 true。或者,您也许可以尝试使用 Popup 元素而不是 ToolTip(似乎您只想手动打开工具提示,而不是使用正常/传统的自动工具提示行为,这将使使用 Popup 可能是更好的选择)。
标签: c# wpf tooltip mouseevent