在已经打开的窗体上使用不同的窗体调用方法
本文关键字:窗体 调用 方法 | 更新日期: 2023-09-27 18:17:24
我已经尝试解决这个问题一段时间了。我已经检查了类似的帖子,但没有解决方案似乎工作。
我的问题是,我试图从一个名为'Log'的表单调用方法'Write'。
public void ActivityLog(string LogString)
{
//Log what the system is doing for the user to see
if (LogAll == true)
{
//check if the error logging form is open
if (Application.OpenForms["Log"] != null)
{
//write to the log form
}
else
{
//the error log page is not yet open
Log LogFrm = new Log();
LogFrm.Show();
//now the form is open log the error
LogFrm.Write(LogString);
}
}
}
}
现在,当我运行程序,我调用'ActivityLog', '日志'的形式打开,我输入的字符串确实出现,第二次我点击按钮的程序去我评论的地方'写到日志形式'。但是我找不到从已经打开的表单中再次调用该方法的方法。
表单'Log'将在整个程序使用过程中保持打开状态,并将从调用'ActivityLog'方法的不同表单中添加到。如有任何建议,我将不胜感激。
试试这样做。
var LogFrm = Application.OpenForms["Log"] as Log;
if (LogFrm == null)
{
LogFrm = new Log();
LogFrm.Show();
}
LogFrm.Write(LogString);