Как открыть файл Excel из C# / WPF в "Full Screen"?
В настоящее время я открываю файлы из моего приложения c#/WPF с помощью
System.Diagnostics.Process.Start("C: .... ");
находится ли окно приложения в полноэкранном режиме и т. д. зависит от состояния предыдущего экземпляра приложения, когда он был закрыт (например, если он был закрыт в полноэкранном режиме, он открывает новый экземпляр в полноэкранном режиме)
что я пытаюсь сделать, это открыть файл в Excel и сделать его полный экран. Я посмотрел в коммутаторы командной строки для Excel, казался довольно ограниченным, так как я не могу изменить файлы excel путем добавления Application.DisplayFullScreen = True
в модуль VBA.
Edit: было неясно, но я хотел открыть его в полноэкранном режиме (без ленты и т. д.), а не максимизировать.
Edit2: ключевая последовательность будет alt+v,u
. Ищете способ использовать SendKeys
отправить последовательность клавиш в окно excel
2 ответов
Похоже, вы можете использовать SendKeys.
http://msdn.microsoft.com/en-us/library/system.windows.forms.sendkeys.send.aspx
Edit: этот код работал для меня
обязательно #include 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)");
}
см. это сообщение SO:
как открыть PDF файл с помощью Foxit/Adobe в полноэкранный режим?
Excel interop может работать для вас... это довольно неприятно для кода, но вы можете сделать с ним почти все, что пользователь может сделать в excel.
Это обзор того, как его использовать
http://www.dotnetperls.com/excel
Это говорит, что вы можете использовать свойство application.DisplayFullScreen, чтобы заставить его идти полным экран
http://msdn.microsoft.com/en-us/library/office/aa168292(v=office.11).aspx