从其他窗体调用按钮

本文关键字:按钮 调用 窗体 其他 | 更新日期: 2023-09-27 18:27:57

大家好。我面临另一个问题。我有2个表单,1个表单是主表单,其中有listview(显示数据库中的数据)、refresh按钮(刷新listview)和addnewitem按钮(添加新项目的位置)。当我按下添加新项目时,显示另一个表单。所以我的问题是,当我使用btn_refresh_Click(object sender,EventArgs e)添加完新项目后,我如何刷新我的列表视图,或者我如何访问btn_Refrefresh_Click

private void btn_Refresh_Click(object sender, EventArgs e)
    {
        ShowItems("B.S. in Information Technology", 1, 18);
        ShowItems("B.S. in Entrepreneurial Management", 19, 36);
        ShowItems("B.S. in Industrial Engineering", 37, 54);
        ShowItems("B.S. in Electronics Engineering", 55, 72);
        ShowItems("Technical-Vocational Courses", 73, 90);
    }

ShowItems是sql select语句向listview显示项目的一种方法。提前谢谢。

从其他窗体调用按钮

创建用于刷新的公共成员函数:

public void Refresh()
{
    ShowItems("B.S. in Information Technology", 1, 18);
    ShowItems("B.S. in Entrepreneurial Management", 19, 36);
    ShowItems("B.S. in Industrial Engineering", 37, 54);
    ShowItems("B.S. in Electronics Engineering", 55, 72);
    ShowItems("Technical-Vocational Courses", 73, 90);
}

并从您的按钮处理程序调用它:

private void btn_Refresh_Click(object sender, EventArgs e)
{
    Refresh();
}

现在你也可以在其他地方叫它!

您可以这样做:

MyAddForm fmAdd = new MyAddForm();
fmAdd.ShowDialog();
btn_Refresh_Click(null,null);
OR
MyAddForm fmAdd = new MyAddForm();
fmAdd.ShowDialog();
RefreshData()

将您的逻辑从刷新按钮中删除,点击并将其添加到一个名为RefreshData的新方法中,并确保按钮点击调用RefreshData

如果您不想创建新方法,请将btn_Refresh_Click事件的访问权限更改为public,并使用调用它

btn_Refresh_Click(null,null);

当你从其他表单调用这个时,使用form2的对象并调用这个事件

设f2是Form2 的对象

f2.btn_Refresh_Click(null,null);

如果你想成为一个更优秀的程序员,试着使用委托