/ / Excel Addin Creation за само един файл - c #, excel, vsto

Excel Addin Creation за само един файл - c #, excel, vsto

Създадох VS Addin Project, където имамписмен код, за да добавите персонализирано меню с някои елементи от менюто в C #. С това получих файл за внедряване на VSTO. Сега отварям произволен Excel файл и добавям това addin или vsto ръчно от Excel Options-> Addins-> Manage (Com Addins) -> Go и добави addin. Моят е, че addin се добавя във всички файлове заедно с файла, в който добавих. Искам потребителят да види това меню с добавки за файла, за който той / тя добави ръчно. Нашият подход е свободен да поиска от потребителя да направи някои специални стъпки, които да последва, или мога да напиша C # код и за постигането на това. Също така не можем да направим това, като идентифицираме името на файла, тъй като името и местоположението на файла може да се променят. Моля, предложете каквото и да е решение, тъй като съм напълно засегнат от този проблем.

Отговори:

0 за отговор № 1

защо не създавате превключвател за показване / добавяне и скриване / премахване на персонализирания ви прозорец на задачите. следвайте инструкциите на адрес:
http://msdn.microsoft.com/en-us/library/aa942846.aspx
msdn.microsoft.com/en-US/office/hh128771


създаване на excel addin чрез визуално студио.
добавете потребителски контрол, лента (визуална) с помощта на десния бутон -> добавяне на нов
контролът от потребителя ще бъде вашето присвояване. добавете бутон за превключване в лентата.

тогава, в ThisAddIn.cs добавете следните редове:

 private UserControl1 myUserControl1;
private Microsoft.Office.Tools.CustomTaskPane myCustomTaskPane;

private void ThisAddIn_Startup(object sender, System.EventArgs e)
{
myUserControl1 = new UserControl1();
myCustomTaskPane = this.CustomTaskPanes.Add(myUserControl1, "My Task Pane");

}
public void toggle(bool b)
{
myCustomTaskPane.Visible = b;
}

след това, в Ribbon1.cs добавете следния код:

 private void toggleButton1_Click(object sender, RibbonControlEventArgs e)
{
Globals.ThisAddIn.toggle(toggleButton1.Checked);
}

Надявам се, че това ще работи за вас.