C# Tooltip not appearing on “Show”

2019-04-06 01:22发布

To fullfill a requirement I have to show a tooltip manually for 30 seconds. According to msdn I just have to use the "Show" method.

toolTip.Show(QuestionHelpText, btnHelp, 30000);

But I only get the standard tooltip behavior, meaning that the message appears half a second after my click (only because the mouse pointer is still over the button). I tried some variations like

toolTip.Show(QuestionHelpText, btnHelp);

but still, nothing happens.

Does anybody have an idea why that is?

Thanks

3条回答
啃猪蹄的小仙女
2楼-- · 2019-04-06 01:30

I think you need to set initialDelay property of tool tip

查看更多
爱情/是我丢掉的垃圾
3楼-- · 2019-04-06 01:39

Where is "toolTip" declared?

MSDN doesn't indicate (on the ToolTip.Show Method documentation) that the Show method is a blocking call, so if you're declaring toolTip in a method and then pretty much straight afterwards exiting the method then toolTip will have fallen out of scope, causing it to not render or disappear.

查看更多
祖国的老花朵
4楼-- · 2019-04-06 01:40

I know a simple workaround

Put a lable (let's name it labelHelp) with empty text near your button

The following code should work

    private void btnHelp_Click(object sender, EventArgs e)
    {
        toolTip.Show(QuestionHelpText, labelHelp, 3000);
    }
查看更多
登录 后发表回答