当我向电子表格添加按钮或链接时,单击事件会起作用。但是,当我保存电子表格时,将其关闭并重新打开,事件不会触发。
AddControl(xlApp, ((TaskPaneView)this.Parent).factory, "text", "A1");
public void AddControl(Microsoft.Office.Interop.Excel.Application xlApp, Microsoft.Office.Tools.Excel.ApplicationFactory factory, string controlText, string address)
{
Microsoft.Office.Interop.Excel.Worksheet nativeWorksheet = xlApp.ActiveWorkbook.ActiveSheet;
Microsoft.Office.Tools.Excel.Worksheet vstoWorksheet = factory.GetVstoObject(nativeWorksheet);
var btn = new Microsoft.Office.Tools.Excel.Controls.Button();
btn.Name = "link1";
btn.Text = controlText;
btn.Click += new EventHandler(btn_Click);
vstoWorksheet.Controls.AddControl(btn, nativeWorksheet.Range[address], controlText);
}
void btn_Click(object sender, EventArgs e)
{
}
打开 WorkBook 时,是否有一种简单的方法可以再次连接事件?
我想我将不得不手动搜索工作簿中的按钮和 AddHandler。
编辑:这已记录在案,但关闭电子表格后没有提及问题:在应用程序级项目的运行时将控件添加到工作表