问题标签 [customtaskpane]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c# - 创建由参数/委托发送的类的实例
我试图通过使用委托或使用类实例作为参数来稍微优化我的代码。我对 C# 很陌生,我还不确定哪一个是更好的方法,假设我一开始就走在正确的轨道上。但我的问题与发送一个类实例作为参数有关。让我解释。我试图遵循这个逻辑,但我失败了......
我创建了一个带有几个按钮的 VSTO 功能区。它看起来有点像这样:
现在,我正在尝试向按钮添加一些功能,因此单击每个按钮都会打开一个新的 TaskPane。
我为注释Calendar
中的功能区按钮编写了这段代码GSMRibbon.cs
:我认为对于更有经验的程序员来说,这段代码会很容易理解,但如果你们不明白,请在评论中告诉我,我会解释)。
好的。我想要做的是修改 CreateTaskPane 函数添加一个class
参数(这有意义吗?)所以我可以多次重复使用此函数用于功能区上的不同按钮。我View
为每个按钮创建了一个单独的按钮,但我不确定如何通过View
.
所以,我在这样的事情之后:(CalendarView 是视图的名称)
和类似的功能:
我真的希望你能理解我正在努力但我无法做到的事情。我感谢任何尝试提供帮助。谢谢
vb.net - 如何将自定义任务窗格添加到 Visual Studio
我正在为 Visual Studio 2012 创建一个加载项。我想创建一个自定义任务窗格,我可以在其中填充可由开发人员选择和打开的文件和文件夹。我找到了很多关于如何使用任务窗格为 MS Office 创建加载项的文档,但是我找不到任何关于如何使用加载项将任务窗格添加到 Visual Studio 的任何内容。
谢谢。
c# - Word 2007 加载项任务窗格在一种特定情况下不起作用
我刚开始使用 Word VSTO 加载项。我想向功能区添加一个组,该功能区有一个用于切换自定义任务窗格的按钮。我希望每个文档都有自己独立的任务窗格。我有这个主要工作,但有一种情况不起作用:
- 启动 Word - 打开新文档,一切正常
- 打开现有文档(关闭空文档)
- 单击切换按钮,窗格不出现
- 创建新文档或打开另一个现有文档,窗格出现在该文档上
- 窗格现在在所有文档上都可以正常工作,包括 2/3 中的问题之一。
请注意,如果您在新文档 (1) 中输入一些内容,一切都会按预期工作,因此这似乎与加载到初始空文档顶部的现有文档有关,但我无法弄清楚发生了什么上。
这是我在 ThisAddIn 类中的代码:
请注意,PaneControl 是一个完全空的用户控件,当我向其中添加内容时行为不会改变。
附加到功能区按钮的代码是:
任何想法为什么会发生这种情况?
谢谢
罗斯科
.net - MS Office 共享加载项:为什么不调用 ICustomTaskPaneConsumer.CTPFactoryAvailable 和 IRibbonExtensibility.GetCustomUI?
我们正在为 PowerPoint 编写一个共享加载项IRibbonExtensibility
并ICustomTaskPaneConsumer
在其中实现。通过在 HKCU 中设置相关键和值来为个人用户注册加载项:
- \Software\Microsoft\Office\PowerPoint\Addins\
- \软件\类\
- \软件\类\CLSID\
- \软件\类\类型库\
- \Software\Classes\Wow6432Node\
- \Software\Classes\Wow6432Node\CLSID\
- \Software\Classes\Wow6432Node\TypeLib\
对于我们几乎所有的用户来说,它都可以完美地工作,但对于某些人来说,方法IRibbonExtensibility.GetCustomUI
并ICustomTaskPaneConsumer.CTPFactoryAvailable
没有被调用。但是,实现 IDTExtensibility2 的方法都在运行。不幸的是,我们无法访问用户的计算机,也无法在我们的开发或测试机器上重现该行为。
哪些情况会导致这种情况?
谢谢, 法布
c# - 如何从共享库访问 VSTO 插件的 CustomTaskPanes 属性?
我正在为 Word、Excel、PowerPoint 构建一个插件。这个插件带有一个功能区。每当用户单击功能区上的按钮时,都会在侧面打开自定义任务窗格。因为我不想在三个不同的项目中重写相同的代码,所以我有一个共享项目,其中定义了我的功能区 (XML)。
问题:功能区回调必须访问该CustomTaskPanes
属性。
我试图将CustomTaskPanes
属性注入共享功能区:
但是在执行此方法时,该CustomTaskPanes
属性null
意味着我正在注入null
.
更改功能区的构造函数以便我们可以将 AddIn 注入功能区也不起作用,因为CustomTaskPanes
属性是内部的,代码会引发异常:
我不想更改ThisAddIn.CustomTaskPanes
属性的访问修饰符,因为它是设计器生成的代码。
我还尝试了反射,结果是MissingMethodException
.
我还能做些什么来从共享库访问插件的自定义任务窗格集合?
ms-word - 在 VSTO Word 插件中为多个文档创建和管理自定义任务窗格
我正在使用 Visual Studio 2008 中的 VSTO 开发 Word 2007-2010 插件。在我的插件中,我需要为每个打开的 Word 文档创建一个自定义任务窗格。基本上,我需要为每个文档创建一个任务窗格,在文档窗口中显示正确的任务窗格,在文档关闭时执行某些操作,然后删除任务窗格以及对它的所有引用。
这是我到目前为止所做的:
任务窗格创建
我为每个新的、打开的或现有的加载文档创建一个自定义任务窗格,如下所示:
在 CreateTaskPaneWrapper 方法中,如果文档的任务窗格已经存在,我会检查 Dictionary<Document, TaskPaneWrapper>。我这样做是因为如果我尝试打开一个已经打开的文档,则会触发 open 事件。如果它不存在,我创建一个新的 TaskPaneWrapper 类。在其构造函数中,我创建了一个新的任务窗格并将其添加到 CustomTaskPanes 集合中
根据 MSDN,这将任务窗格与当前活动窗口相关联。
任务窗格关闭
Document.Close 和 Application.DocumentBeforeClose 事件都不适合我,因为它们在用户确认关闭文档之前触发。所以我在我的 TaskPaneWrapper 类中使用 Microsoft.Office.Tools.Word.Document.Shutdown 事件,如下所示:
所有这一切似乎工作得很好,任务窗格被创建,绑定到相应的窗口,并被成功删除。但是,我仍然有一个问题 - 当我启动 Word 时,会打开一个空白文档。如果我随后打开现有文档而不更改空白文档,则会删除空白文档及其窗口,而不会触发 Document.Close、Application.DocumentBeforeClose 和 Microsoft.Office.Tools.Word.Document.Shutdown 事件。因为没有调用 OnShutdown 并且没有删除空白文档的任务窗格,所以下一个文档窗口包含两个任务窗格 - 非常新的一个和第一个(孤立的)一个。如何删除这个孤立的任务窗格?访问已删除的文档或窗口引用会引发 COMException(“对象已删除”)。我暂时使用这个黑客:
在 CreateTaskPaneWrapper 方法中,我检查所有现有包装器的此属性并关闭属性为假的包装器。当然,捕获异常有点昂贵,而且这个解决方案非常hacky,所以我想知道,有没有更好的解决方案?在这个问题中,CustomTaskPane.Window 属性被检查为 null,但它永远不会为我返回 null。
另外,使用我当前的逻辑还有其他问题吗?为多个文档管理多个任务窗格的典型方法是什么?
excel - Excel 自定义任务窗格未显示
我在 excel VSTO 加载项中显示了一个自定义任务窗格,我正在构建它并显示如下:
这是在ThisAddin.cs
文件中完成的,它在我的机器上运行良好,无论是在调试会话下还是通过单击一次安装程序安装的加载项。
但是,在同事的机器上安装插件很麻烦。
加载项运行正常,上下文菜单/功能区运行良好,但窗格拒绝显示。
我在功能区上有一个切换按钮,它可以切换Visible
窗格上的属性,即使单击它也不会强制窗格显示。
对此的任何帮助将不胜感激,谷歌证明对此毫无用处。
谢谢。
我应该提一下,这CellTaskPane
只是UserControl
MSDN 上的文档:http: //msdn.microsoft.com/en-us/library/aa942846.aspx
javascript - 如何访问资源的日历例外 - Office 插件开发、Microsoft Project
我正在尝试制作一个 Office 任务窗格应用程序,它可以访问资源日历异常,并将它们显示给用户。
我设法访问了资源,我可以获得很多字段,但不能获得日历例外。看起来,它们直接存储在其他地方,而不是 Resource 对象中。
一些代码片段:
然后我使用此 ID 来获取选定的资源字段,例如名称、成本、工作等,并将它们显示在 HTML 任务窗格上的文本字段中。例子 :
我想使用此 ResourceCalendarGUID 访问资源唯一日历,其中存储了异常,并且我想通过 html 任务窗格上的文本字段向最终用户显示这些异常。
感谢您的时间!
ms-office - 在 Office2013 中设置 VSTO CustomTaskPane DockPosition 很慢
我正在制作一个具有 CustomTaskPane 的 Excel 加载项。在加载时,我尝试设置自定义任务窗格的停靠位置、高度和宽度。设置这些属性在 Excel2010 上几乎立即执行,但在 Excel2013 上几乎需要两秒钟。
我在 MSDN 上看到了一个关于此的问题,但没有给出真正的答案。其他人是否有此问题,是否有解决方法?
c# - CustomTaskPane 不会出现在 win 7 中,但在开发机器上会出现
我已经构建了一个 EXCEL 2013 Add In。这在我的开发机器上成功运行。我可以在同一台机器上使用 Click-Once 部署安装此加载项。一般来说,这个插件可以在我的机器上完美运行,无论我是从 Visual Studio 启动,还是我清理项目、从控制面板卸载、从单击一次部署安装。
不运行的症状是加载项的功能区选项卡实际上显示得很好。我在此功能区选项卡上有一个按钮,它将使 CustomTaskPane 可见,只有当我将其安装在装有 Windows 7 的用户计算机上时,功能区选项卡仍会显示,但该按钮不执行任何操作。
我修改了加载项,使其在启动时自动显示 CustomTaskPane。它不会为 windows-7 用户显示。
我查看了机器上的应用程序日志,没有发现任何相关问题。关于如何进一步调试的任何建议?