我使用Add-In Express for .NET创建了一个 excel 插件,但似乎无法弄清楚如何仅在“活动”表上有一组数据时才显示我的功能区。
如果工作表在某行单元格中不包含某组数据,我想隐藏我的功能区,因为功能区上的按钮不适用于所有工作表。当用户在不同的工作表之间切换时,我想适当地隐藏/显示功能区。
我尝试使用该AddinInitialize
事件,但这只会触发一次。我不想强迫用户直接打开 Excel 文件。他们应该能够打开 Excel,然后从“文件”菜单中选择文件。
这是我到目前为止所拥有的,但我不知道该放在哪里:
private void OnAddinInitialize(object sender, EventArgs e)
{
// note: this does not work all the time!
adxRibbonTab1.Visible = IsRibbonVisible();
}
private bool IsRibbonVisible()
{
var worksheet = ActiveSheet;
if (worksheet == null)
return false;
// only show ribbon when top row has certain column headings
var reader = new WorksheetReader(worksheet);
return reader.HasColumns(TopLeftCell, RequiredColumnNames);
}
我已经尝试创建一个ADXExcelWorksheetEvents
实例并覆盖一些事件,但到目前为止我没有太多运气。对于这种类型的工作流程,我也无法在他们的网站上找到任何内容。
我会很感激任何帮助!