如何从“中的C#/WPF”打开Excel文件;全屏;?

如何从“中的C#/WPF”打开Excel文件;全屏;?,c#,excel,C#,Excel,目前,我正在使用打开C#/WPF应用程序中的文件 System.Diagnostics.Process.Start("C:\ .... "); 应用程序窗口是否处于全屏状态等取决于应用程序的前一个实例在关闭时所处的状态(例如,如果它在全屏状态下关闭,它将全屏打开一个新实例) 我要做的是在Excel中打开一个文件并使其全屏显示。我查看了Excel的命令行开关,似乎相当有限,因为我无法通过将Application.DisplayFullScreen=True添加到VBA模块中来修改Excel文件

目前,我正在使用打开C#/WPF应用程序中的文件

System.Diagnostics.Process.Start("C:\ .... ");
应用程序窗口是否处于全屏状态等取决于应用程序的前一个实例在关闭时所处的状态(例如,如果它在全屏状态下关闭,它将全屏打开一个新实例)

我要做的是在Excel中打开一个文件并使其全屏显示。我查看了Excel的命令行开关,似乎相当有限,因为我无法通过将
Application.DisplayFullScreen=True
添加到VBA模块中来修改Excel文件

编辑:不清楚,但我想以全屏模式(无功能区等)打开它,而不是最大化。


Edit2:按键顺序为
alt+v,u
。正在寻找使用SendKeys将键序列发送到excel窗口的方法,看起来您可以使用SendKeys

编辑:这个代码对我有用 确保
#包括System.Windows.Forms
和所有需要的内容

[DllImport("user32.dll")]
static extern bool ShowWindow(IntPtr hWnd, int nCmdShow);

public void Go()
{
    Process excel = new Process();
    excel.StartInfo.FileName = @"C:\Test.xlsx";
    excel.Start();

    // Need to wait for excel to start
    excel.WaitForInputIdle();

    IntPtr p = excel.MainWindowHandle;
    ShowWindow(p, 1);
    SendKeys.SendWait("%(vu)");
}
请参阅以下帖子:


Excel interop可能适合您。。。用它来编写代码是相当讨厌的,但是你可以用它做几乎任何用户在excel中可以做的事情

这是如何使用它的概述

这表示您可以使用property Application.DisplayFullScreen使其全屏显示


我刚看到你的编辑。实际上,我认为您可以在另一个进程上使用
SendKeys
。查看此帖子:为什么要使用
System.Diagnostics.Process.Start
打开excel文件?与WPF无关,正在删除标记。