winforms 将Excel窗口移到Windows窗体后面

jucafojl  于 2023-08-07  发布在  Windows
关注(0)|答案(1)|浏览(127)

我正在尝试编写一个Windows窗体,它可以打开和编辑Excel文件,并添加当前日期和时间。我希望能够看到的变化时,它发生在文件上,并保持文件打开。这是由当前代码完成的。

public void appendDate(string filePath, int row, int col)
        {
            Excel.Application excel = null;
            excel = new Excel.Application();

            excel.Visible = true;
            //excel.WindowState = Excel.XlWindowState.xlNormal;
            excel.DisplayAlerts = false;
            Excel.Workbook wkb = null;

            wkb = excel.Workbooks.Open(filePath, ReadOnly: false);
            excel.WindowState = Excel.XlWindowState.xlNormal;
            var ws = wkb.Worksheets[1];
            DateTime dateAndTime = DateTime.Now;
            ws.Cells[row, col].Value = dateAndTime;

            wkb.Save();
        }

字符串
当在windows窗体上单击某个按钮时,我调用此方法。我的问题是,其他事件发生后,Excel文件编辑在同一按钮点击。调用此方法后,我希望Excel文件被最小化,或者我希望用户可以单击Windows窗体UI并将其移动到前面。现在,excel文件正在阻止windows窗体,直到按钮单击上的程序任务完成。
我尝试在程序中的open命令之前最小化窗口:
第一个月
然而,当我在程序执行完成后打开最小化窗口时,更改在实际单元格中不可见,只在excel中的公式行中显示正确的文本。

qq24tv8q

qq24tv8q1#

您可以尝试在Excel文件中进行操作后,在Windows窗体上调用Activate()将其带回到前面,而不是尝试隐藏Excel文件。

相关问题