我对 C# 还很陌生,并且遇到了一些问题。我相信线程可能是答案,但这只是我在寻找解决方案时听到的流行语。
命名空间测试
{
    公共部分类Form1:表格
    {
        私人表格2表格2;
        公共表格1()
        {
            初始化组件();
            表格 2 = 新表格 2();
        }
        私人无效运行检查(对象源,System.Timers.ElapsedEventArgs e)
        {
            form2.ShowDialog();
            form2.TopMost = true;
        }
        私人无效runCheckFalse()
        {
            form2.Hide();
        }
}
这只是我剥离的应用程序的一个快速代码片段,但是在尝试这个时我得到一个错误:跨线程操作无效:控制'Form2'从创建它的线程以外的线程访问。
另外作为旁注,我正在使用 form2.TopMost = true; 尝试在其他所有内容之上打开窗口,但这通常最终出现在 Visual Studio 等后面