检查是否调用了button_click事件
本文关键字:click 事件 button 是否 调用 检查 | 更新日期: 2023-09-27 18:03:53
我的按钮pict
让您选择一些图像。下面是这个按钮的click_event
:
private void picture_Click(object sender, EventArgs e)
{
using (OpenFileDialog dlg = new OpenFileDialog())
{
dlg.Title = "Open Image";
dlg.Filter = "Image files (*.jpg, *.jpeg, *.jpe, *.jfif, *.png) | *.jpg; *.jpeg; *.jpe; *.jfif; *.png";
if (dlg.ShowDialog() == DialogResult.OK)
{
pict.Add(new Bitmap(dlg.FileName));
}
}
}
我有几个相同的面板与这个按钮。如果我不使用pict
按钮,那么它应该加载一个标准的图像。如何知道Picture_Click
在哪个面板中调用,在哪个面板中不调用?(我也想把一个小PictureBox
附近的按钮被点击)。Standart形象![1]
使用事件处理程序的sender参数的Parent属性来发现面板:
Control myControl = ((Button)sender).Parent;
private void picture_Click(object sender, EventArgs e)
{
using (OpenFileDialog dlg = new OpenFileDialog())
{
dlg.Title = "Open Image";
dlg.Filter = "Image files (*.jpg, *.jpeg, *.jpe, *.jfif, *.png) | *.jpg; *.jpeg *.jpe; *.jfif; *.png";
if (dlg.ShowDialog() == DialogResult.OK)
{
((Button)sender).Add(new Bitmap(dlg.FileName));
}
}
}
这应该可以正常工作。
好了,我更新了代码,希望这次我做对了。
我不确定这个答案是否会帮助你,但也许不是void,你可以返回一些东西,比如整数。
可能存储在一些数据库或其他东西中,比如一个标志。如果这个标志是0,那么你还没有调用这个方法,如果它是1,那么这个方法已经被调用了。
类似:
private int picture_Click(object sender, EventArgs e)
{
using (OpenFileDialog dlg = new OpenFileDialog())
{
dlg.Title = "Open Image";
dlg.Filter = "Image files (*.jpg, *.jpeg, *.jpe, *.jfif, *.png) | *.jpg; *.jpeg; *.jpe; *.jfif; *.png";
if (dlg.ShowDialog() == DialogResult.OK)
{
pict.Add(new Bitmap(dlg.FileName));
return 1;
}
}
}
我希望这有帮助!