即使在窗体加载时设置了 C# 工具提示也不会显示



我在设置工具提示时遇到问题,该工具提示将根据目标按钮而变化。

这是我的表单加载事件,用于设置我的工具提示。

private void FrmMain_Load(object sender, EventArgs e)
    {
        tabView.TabPages.Clear();
        toolTip.SetToolTip(btnACust, "Add customer");
        toolTip.SetToolTip(btnRCust, "Remove customer");
        toolTip.SetToolTip(btnSrch, "Search for an item");
        toolTip.SetToolTip(btnRef, "Refresh search criteria and data");
        toolTip.SetToolTip(btnEdit, "Edit selected item");
        toolTip.SetToolTip(btnDel, "Delete selected item");
        toolTip.SetToolTip(btnSell, "Add item to cart");
        toolTip.SetToolTip(btnReg, "Sell item/s");
        toolTip.SetToolTip(btnCRef, "Refresh search criteria and data");
        toolTip.SetToolTip(btnUpd, "Update item");
        toolTip.SetToolTip(btnUndo, "Reset to default values");
        toolTip.SetToolTip(btnECan, "Cancel all changes and close");
        dataGridSales.Columns[3].DefaultCellStyle.FormatProvider = CultureInfo.GetCultureInfo("en-PH");
        dataGridSales.Columns[3].DefaultCellStyle.Format = String.Format("C2");
        dataGridSales.Columns[3].ValueType = typeof(Double);
        dataGridSales.Columns[4].Visible = false;
        lblTimeDate.Text = "Date: " + System.DateTime.Now.ToShortDateString();
        dateTimeToday.Value = System.DateTime.Now;
    }

我什至尝试将其放在这里。

public FrmMain()
    {
        InitializeComponent();
        toolTip.SetToolTip(btnACust, "Add customer");
        toolTip.SetToolTip(btnRCust, "Remove customer");
        toolTip.SetToolTip(btnSrch, "Search for an item");
        toolTip.SetToolTip(btnRef, "Refresh search criteria and data");
        toolTip.SetToolTip(btnEdit, "Edit selected item");
        toolTip.SetToolTip(btnDel, "Delete selected item");
        toolTip.SetToolTip(btnSell, "Add item to cart");
        toolTip.SetToolTip(btnReg, "Sell item/s");
        toolTip.SetToolTip(btnCRef, "Refresh search criteria and data");
        toolTip.SetToolTip(btnUpd, "Update item");
        toolTip.SetToolTip(btnUndo, "Reset to default values");
        toolTip.SetToolTip(btnECan, "Cancel all changes and close");
    }

但是工具提示不显示任何内容。它只会在我打开第一个标签页时显示。如果我选择打开其他标签页,它将不会显示。

这是我的第一个标签页将打开的事件

private void productsToolStripMenuItem_Click(object sender, EventArgs e)
    {
        if (!splitContainer1.Panel1.Contains(tabProd))
        {
            tabView.Visible = true;
            tabView.TabPages.Add(tabProd);
            tabView.SelectTab(tabProd);
            refresh();
        }
        else
        {
            tabView.SelectedTab = tabProd;
        }
    }

我所有的标签都以相同的方式打开。我想MouseHover Event但我的按钮太多了,这些只是其中的一部分。

该按钮位于我的拆分容器面板 2。选项卡页在拆分容器面板 1 中打开。 这是我的表单加载示例。

用户需要打开此选项卡页,以便显示工具提示。但是即使此选项卡未首先打开,我也需要显示工具提示。

当我的第一个标签页打开时

由于第一个选项卡页已打开,因此现在显示工具提示

此外,工具提示不显示其他选项卡页面是否打开。

如果用户打开其他标签页

如果用户打开其他标签页

您需要将 toolTip.ShowAlways 设置为 true。

所以你的代码应该看起来像这样:

private void FrmMain_Load(object sender, EventArgs e)
{
    tabView.TabPages.Clear();
    toolTip.ShowAlways = true;
    toolTip.SetToolTip(btnACust, "Add customer");
    toolTip.SetToolTip(btnRCust, "Remove customer");
    toolTip.SetToolTip(btnSrch, "Search for an item");
    toolTip.SetToolTip(btnRef, "Refresh search criteria and data");
    toolTip.SetToolTip(btnEdit, "Edit selected item");
    toolTip.SetToolTip(btnDel, "Delete selected item");
    toolTip.SetToolTip(btnSell, "Add item to cart");
    toolTip.SetToolTip(btnReg, "Sell item/s");
    toolTip.SetToolTip(btnCRef, "Refresh search criteria and data");
    toolTip.SetToolTip(btnUpd, "Update item");
    toolTip.SetToolTip(btnUndo, "Reset to default values");
    toolTip.SetToolTip(btnECan, "Cancel all changes and close");
    dataGridSales.Columns[3].DefaultCellStyle.FormatProvider = CultureInfo.GetCultureInfo("en-PH");
    dataGridSales.Columns[3].DefaultCellStyle.Format = String.Format("C2");
    dataGridSales.Columns[3].ValueType = typeof(Double);
    dataGridSales.Columns[4].Visible = false;
    lblTimeDate.Text = "Date: " + System.DateTime.Now.ToShortDateString();
    dateTimeToday.Value = System.DateTime.Now;
}

最新更新