在C#中创建一个Excel添加应用程序#
我想创建一个Excel添加。但我希望它有一个特殊的行为。在C#中创建一个Excel添加应用程序#
然后问题在于我开发的Excel添加在Excel中。即使当我从Windows运行一个正常的Excel实例...
所以,我想,更确切地说,是有一个Excel添加,只会出现在Excel的功能区,当我自己的C#_应用。
我该怎么做?
行为将是:
- 运行我的C#应用程序
- 我的C#应用程序调用一个新的Excel的实例
- 我的C#应用程序增加了一个新的选项卡(和它的元素)到这个色带Excel的实例
- 我的C#应用程序添加绑定到选项卡元素的动作
- Excel的实例正在关闭删除所有添加的组件,函数,方法...
- 关闭我的C#appliclation
这里有一个很好的教程你:http://www.add-in-express.com/free-addins/net-excel-addin.php
编辑:
你有没有考虑只是禁用插件,然后重新启用它,只要你有一台服务器启动应用程序在后台运行,当excel关闭时,禁用插件?
下面是一些卸载代码,我found here:
private void UnloadBadAddins(bool unloadAddin)
{
const string badAddin = "iManage Excel2000 integration (Ver 1.3)";
foreach(Office.COMAddIn addin in this.ExcelApp.COMAddIns)
{
if (addin.Description.ToUpper().Contains(badAddin.ToUpper()))
{
if (addin.Connect == unloadAddin)
{
addin.Connect = !unloadAddin;
return;
}
}
}
}
我认为你没有正确阅读他的问题。他问如何通过互操作在Excel中启用特定功能,而不是如何创建/使用插件。 –
编辑以更好地回答问题。 :) –
它工作得很好!这正是我想要的!谢谢你们俩 ! – Jsncrdnl
我发现在Microsoft.Office.Interop.Excel.Application
类以下两个属性:
var excel = new Application();
excel.AddIns
excel.AddIns2
也许这些可以帮助您以编程方式添加/你的应用程序中删除加载项跑?
在Excel.Application中查看切换当前活动加载项的某种方式。由于在实际应用中有类似的东西,我假设在C#interop中有类似的东西。如果您还没有解决问题,我会在稍后帮助您,目前正忙着.. :)祝您好运! –