C# 如何在menustrip中调用图像并将其隐藏?
我想知道如何才能做到这一点,因为我将使用它来通知用户某个选项卡中是否有值 所以我想做的是,当图像有值时会出现,当它为空时,图像会被隐藏C# 如何在menustrip中调用图像并将其隐藏?,c#,winforms,C#,Winforms,我想知道如何才能做到这一点,因为我将使用它来通知用户某个选项卡中是否有值 所以我想做的是,当图像有值时会出现,当它为空时,图像会被隐藏 请注意,当某个选项卡中有值时,图像将重新出现。我建议您使用某个选项卡的属性 您可以通过向控件添加mouseenter和mouseleave事件来测试这一点,如本例所示。这样,您就不会像上面的评论中建议的那样删除图像(通过将其设置为null) private void testToolStripMenuItem_MouseEnter(object sender
请注意,当某个选项卡中有值时,图像将重新出现。我建议您使用某个选项卡的属性 您可以通过向控件添加mouseenter和mouseleave事件来测试这一点,如本例所示。这样,您就不会像上面的评论中建议的那样删除图像(通过将其设置为null)
private void testToolStripMenuItem_MouseEnter(object sender, EventArgs e)
{
(sender as ToolStripMenuItem).DisplayStyle = ToolStripItemDisplayStyle.Text;
}
private void testToolStripMenuItem_MouseLeave(object sender, EventArgs e)
{
(sender as ToolStripMenuItem).DisplayStyle = ToolStripItemDisplayStyle.ImageAndText;
}
我希望这能进一步帮助你
干杯我是这样做的,当某个表中有值时,图像就会出现,除非它是空的,否则menutoolstrip中的图像就不会出现 这是我的密码:
private void Home_Load(object sender, EventArgs e)
{
if (GetPurchase())
{
forApprovalToolStripMenuItem.Image = Properties.Resources.sign_check_icon;
}
else
{
forApprovalToolStripMenuItem.Checked = false;
}
itemRequestsToolStripMenuItem.Enabled = true;
forApprovalToolStripMenuItem.Enabled = false;
}
bool GetPurchase()
{
bool withPending;
using (SqlConnection con = new SqlConnection(Helper.GetConnection()))
{
con.Open();
string query = @"SELECT POID FROM purchaseorder_table WHERE status='Pending'";
using (SqlCommand cmd = new SqlCommand(query, con))
{
return withPending = cmd.ExecuteScalar() == null ? false : true;
}
}
}
为菜单打开事件创建事件处理程序。根据显示/不显示决策所依据的状态,修改ToolStripItem具有图像属性的菜单项属性。将它设置回null以隐藏它。我尝试应用它,但它没有任何作用。我认为它缺乏something@JonathanSumilang它很好用。非常小心地使用toolStripMenuItem的正确名称。很好的解决方案+1我尝试了几次应用它,但在我的项目中效果不好,我需要在某个事件发生时触发此事件,如需要批准的项目堆积时,图像将出现在工具条菜单上,然后在批准所有项目后,如果没有请求,图像将消失made@JonathanSumilang提供的代码只是如何使用MouseEnter和Mousellave实现这一点的示例。我之所以选择这两个事件是为了让您对实现有一个简单的视觉感受。您可以在代码中的任何地方很好地实现这一点。也许你可以给我提供更深入的源代码示例,我可以更好地帮助你。