gpt4 book ai didi

c# - 如何设置Excel窗口的大小?

转载 作者:行者123 更新时间:2023-12-03 01:02:32 26 4
gpt4 key购买 nike

我有一个 wpf 窗口,应该在 Excel 窗口旁边打开。 Excel 使用 Interop.Excel 打开和处理。在我的窗口中,我有一个方法,它应该设置 Excel 窗口的大小。

private void SetLayout()
{
Top = 0;
Left = 0;
Height = SystemParameters.WorkArea.Height;
((ConfiguratorWindowViewModel) DataContext).Manager.App.Height =
SystemParameters.WorkArea.Height;
((ConfiguratorWindowViewModel) DataContext).Manager.App.Left = Width;
((ConfiguratorWindowViewModel) DataContext).Manager.App.Width = SystemParameters.WorkArea.Width - Width;
}

在我的 View 模型中,我有一个管理器,它返回打开的 Excel 应用程序 (Office.Interop.Excel.Application)。我可以设置 wpf 窗口的高度、顶部、..,它工作正常,但不能在 Excel 窗口上。 如何设置 wpf 窗口旁边的 Excel 窗口的大小,以便两者一起填满整个屏幕?

编辑:

我尝试了这个,但它也不起作用:

((ConfiguratorWindowViewModel) DataContext).Manager.App.WindowState = Microsoft.Office.Interop.Excel.XlWindowState.xlNormal;
((ConfiguratorWindowViewModel) DataContext).Manager.App.ActiveWindow.Height = Screen.PrimaryScreen.Bounds.Height;
((ConfiguratorWindowViewModel) DataContext).Manager.App.ActiveWindow.Width = Screen.PrimaryScreen.Bounds.Width - Width;

当我像 .Height=800; 这样硬编码时,两者都将高度设置为不同的值,但不是正确的值。它也不起作用。

不幸的是,我无法发布图像来向您展示它的外观以及它应该是什么样子。

编辑:

这个问题与这个问题不同( How do I change another program's window's size? )。我不想更改“外国”应用程序的大小。

最佳答案

假设您有一个 Excel 应用程序存储在名为 App 的变量中。然后你可以做这样的事情:

App.WindowState = Microsoft.Office.Interop.Excel.XlWindowState.xlNormal;
App.ActiveWindow.Height = Screen.PrimaryScreen.Bounds.Height;
App.ActiveWindow.Width = Screen.PrimaryScreen.Bounds.Width;

Screen 类用于获取主屏幕的分辨率。

您也可以最大化窗口:

 App.WindowState = Microsoft.Office.Interop.Excel.XlWindowState.xlMaximized

关于c# - 如何设置Excel窗口的大小?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24798019/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com