你好
让我解释一下我想做什么。我有一个Form
10PictureBoxes
的。当我click
在其中之一时,我想隐藏除单击的之外的所有其他内容。有可能ClickEvent
所有这些都隐藏了其他人。但我要求有效的方式。例如,可能使用来自单击事件的单个函数调用。
你好
让我解释一下我想做什么。我有一个Form
10PictureBoxes
的。当我click
在其中之一时,我想隐藏除单击的之外的所有其他内容。有可能ClickEvent
所有这些都隐藏了其他人。但我要求有效的方式。例如,可能使用来自单击事件的单个函数调用。
只需编写一个接受对象的函数。在该函数中,您可以遍历所有这些图片框并将其与对象进行比较。如果它是您不隐藏的 Sender 对象,否则您会。
我没有在这台计算机上安装 .net,但这是我的解决方案。
为每个控件创建一个 Tag,然后选择所有 10 个图片框并为它们创建单击事件。
在单击事件中,您可以使用此代码循环所有控件并仅隐藏图片框。
foreach (Control ctrl in Form1.Controls)
{
if (ctrl.GetType() == typeof(PictureBox))
{
if (((PictureBox)ctrl).Tag == ((PictureBox)sender).Tag)
{
ctrl.Hide();
}
else
{
ctrl.Show();
}
}
}
您也许可以比较没有标签的对象,但如果没有安装 c#,我无法测试它。