gpt4 book ai didi

c# - C# 中的后期绑定(bind)到 XAML/Store 应用程序中的 Word 控件

转载 作者:太空狗 更新时间:2023-10-29 21:56:48 24 4
gpt4 key购买 nike

以前我可以使用

在另一个应用程序中找到 Word 文档
[DllImport("Oleacc.dll")]
private static extern long AccessibleObjectFromWindow(int windowHandle, int objectID, Guid refID, ref IntPtr accessibleObject);

并将返回的结果对象转换为

Microsoft.Office.Interop.Word.Window

这非常有效,因为我可以在 Microsoft Outlook 中检查有关 Word 的不同属性,因为 MS Outlook 使用 Word 窗口来呈现其电子邮件内容。

但是,它在 XAML/Windows 应用商店应用程序中有点棘手,因为嵌入的 Word 文档似乎没有直接窗口句柄。下面是窗口的 inspector.exe 输出。所选的“消息”项目是我的 Word 实例。然而,根据可访问性检查器,树中唯一具有 NativeWindowHandles 的项目是邮件窗口和标题窗口。

有谁知道如何将外部 XAML/商店应用程序中的 Word 控件编码到 C# 对象中?

enter image description here

最佳答案

你在这里运气不好。您在 Inpect 工具中看到的确实是一个具有“_WwG”类名的元素,但您在这里处理的不是 Word 的可自动化实例。

这里首先缺少的是类“_WwG”的 native 窗口句柄,此外,所使用的代码 - 尽管是 Microsoft Office 2016 组件 - 没有公开任何您可以访问的 COM 接口(interface)(位于至少不是熟悉的 Word COM 对象模型)。

根据您的要求,您也许能够找到基于 UI 自动化的解决方案 - 与 Inspect 工具使用的检查技术相同。

关于c# - C# 中的后期绑定(bind)到 XAML/Store 应用程序中的 Word 控件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38384107/

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