【问题标题】:How do I add a TreeNode ToolTip delay in c#如何在 c# 中添加 TreeNode ToolTip 延迟
【发布时间】:2021-12-06 20:36:32
【问题描述】:

我发现普通工具提示允许您添加 InitialShowDelay。在树视图中添加工具提示时,我似乎无法编辑此延迟。

TreeNode node;
node.ToolTipText = "Hello";
/* One suggestion was:
 *   ToolTipService.InitialShowDelay
 * Another suggestion was:
 *   toolTip.InitialShowDelay
 * This uses the ToolTip element, which isn't possible in a TreeView
 */

我想知道是否可以在不使用 DrawNode() 手动绘制每个节点的情况下添加 TreeNode ToolTip 延迟。


编辑 1:

作为替代方案,我添加了一个带有额外鼠标悬停事件的 ToolTip 控件:

private void treeView1_NodeMouseHover(object sender, TreeNodeMouseHoverEventArgs e) {
    if (!string.IsNullOrEmpty(e.Node.ToolTipText)) {
        toolTip1.Show(e.Node.ToolTipText, treeView1);
    }
}

【问题讨论】:

    标签: c# winforms treeview tooltip treenode


    【解决方案1】:

    我可能误解了您的问题,但 ToolTip.Show 方法的持续时间过载。

    我在 treeView1 之后将值“2000”(以毫秒为单位的时间)添加到您的方法中,以满足“int duration”参数。

    private void treeView1_NodeMouseHover(object sender, TreeNodeMouseHoverEventArgs e) {
        if (!string.IsNullOrEmpty(e.Node.ToolTipText)) {
            toolTip1.Show(e.Node.ToolTipText, treeView1, 2000);
        }
    }
    

    【讨论】:

    • 是的,还有一个选项可以为树视图节点提供自己的工具提示,而不是使用工具提示控件。第一个没有延迟选项,这就是我切换到普通工具提示控件的原因。
    猜你喜欢
    • 1970-01-01
    • 2017-03-20
    • 2015-01-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-02-21
    相关资源
    最近更新 更多