C# WinForm:是否可以对多个控件使用相同的函数,但根据悬停的内容返回不同的结果?
我有一些(28)控件。需要根据悬停的内容显示某些内容。我想知道是否有一种方法可以避免生成28个函数(每个控件悬停一个),而可能只生成一个 例如。 我想替换如下内容:C# WinForm:是否可以对多个控件使用相同的函数,但根据悬停的内容返回不同的结果?,c#,winforms,hover,controls,C#,Winforms,Hover,Controls,我有一些(28)控件。需要根据悬停的内容显示某些内容。我想知道是否有一种方法可以避免生成28个函数(每个控件悬停一个),而可能只生成一个 例如。 我想替换如下内容: void btn1Hover() { value = 1; } void btn2Hover() { value = 2; } .... 比如: void btnsHover() { if(btn.Name= "btn1") value=1; else 2} p、 s sry用于代码缩进。我不知道为什么它不起
void btn1Hover() { value = 1; }
void btn2Hover() { value = 2; }
....
比如:
void btnsHover() { if(btn.Name= "btn1") value=1; else 2}
p、 s sry用于代码缩进。我不知道为什么它不起作用。是的,它起作用了。您将看到,您可以为任何控件选择一个现有函数作为事件处理程序。您可以为所有28个控件选择相同的函数。此函数中的第一个参数是sender。这就是您正在寻找的控件。是的,它可以工作。您将看到,您可以为任何控件选择一个现有函数作为事件处理程序。您可以为所有28个控件选择相同的函数。此函数中的第一个参数是sender。这就是您要寻找的控件。您可以创建一个函数,在其中可以使用Switch语句:
Switch
{
Case btn1Hover:
break;
Case btn2Hover:
break
}
您可以创建一个函数,在其中可以使用Switch语句:
Switch
{
Case btn1Hover:
break;
Case btn2Hover:
break
}
只需创建一个生成所需内容的函数,并将此函数添加到属性屏幕中所有按钮的鼠标悬停事件中。只需创建一个生成所需内容的函数,并将此函数添加到属性屏幕中所有按钮的鼠标悬停事件中。您可以使用类似的方法,在您的案例中,使用Tag属性可能非常有趣
private void buttonMouseHover(object sender, EventArgs e)
{
value = ((Button)sender).Tag
}
您可以将此方法指定给按钮的事件鼠标悬停您可以使用类似的方法,在您的情况下,使用Tag属性可能非常有趣
private void buttonMouseHover(object sender, EventArgs e)
{
value = ((Button)sender).Tag
}
您可以将此方法分配到按钮的事件鼠标上方如果您的回答听起来很像我在寻找的内容,请您提供有关在函数中使用发送器的材料或任何内容?创建函数,尝试一下,如果您有问题,请问一个问题。工作正常。非常感谢你的回答听起来很像我要找的,你能提供一个关于在函数中使用发送者的材料或任何东西吗?创建函数,尝试一下,如果你有问题,问一个问题。非常感谢。我对标签还不太了解,但我理解你的例子。我将此标记为有用的TOOTHANK,我鼓励您阅读更多关于标记及其用法的信息,您可以在这里找到第一个概述我对标记还不太了解,但我理解您在示例中的意图。我将把它标记为有用的toothanks,我鼓励您阅读更多关于标记及其用法的信息,您可以在这里找到第一个概述