如何在ToolStripButton上刷新ToolTipText?

时间:2017-06-09 05:01:38

标签: c# winforms toolstrip toolstripitem

我想在ToolStripButton上实现简单的切换功能。

查看模式 - >编辑模式

编辑模式 - >查看模式

这段代码工作正常,只是ToolTip没有刷新。我尝试了AutoToolTip属性。我还尝试将ToolTipText设置为string.Empty。但我的工具条继续显示旧的工具提示文本。当我切换时,ToolTipText也应该改变。

private void btnTrackingMode_Click(object sender, EventArgs e)
{
    if (_currentSheetTrackingMode == SheetTrackingMode.ViewMode)
    {
        _currentTrackingMode = TrackingMode.EditMode;

        btnTrackingMode.AutoToolTip = true;
        btnTrackingMode.ToolTipText = string.Empty;
        btnTrackingMode.ToolTipText = "You are currently in Edit Mode. Click here to enter into View Mode";
        btnTrackingMode.Image = ((System.Drawing.Image) ((Image) new ComponentResourceManager(typeof(MyForm)).GetObject("btnTrackingEditMode.Image")));
        btnTrackingMode.ImageTransparentColor = System.Drawing.Color.Magenta;
    }
    else
    {
        _currentTrackingMode = TrackingMode.ViewMode;

        btnTrackingMode.AutoToolTip = true;
        btnTrackingMode.ToolTipText = string.Empty;
        btnTrackingMode.ToolTipText = "You are currently in View Mode. Click here to enter into Edit Mode";
        btnTrackingMode.Image = ((System.Drawing.Image) ((Image) new ComponentResourceManager(typeof(MyForm)).GetObject("btnTrackingViewMode.Image")));
        btnTrackingMode.ImageTransparentColor = System.Drawing.Color.Magenta;
    }
}

1 个答案:

答案 0 :(得分:0)

您可以尝试refresh按钮的父ToolStrip

btnTrackingMode.ToolTipText = "something";
//put your toolstrip's name here
buttonsToolStrip.Refresh();

如果父工具条由于某种原因无法直接使用,则应该能够通过btnTrackingMode.Owner访问父工具条。