设置 getScreentip 功能区 xml 属性时 ExcelDNA 不工作
ExcelDNA not working when getScreentip ribbon xml attribute is set
没有放整条丝带xml,这是我的按钮:
<button id="getLatestCEVersion" keytip="N" label="Download Latest" screentip="Download latest version of this CalcEngine" imageMso="MarkForDownload" onAction="RibbonXOnActionWithTag" tag="GetCurrentCalcEngine" size="large" getEnabled="RibbonXGetEnabled" />
一切正常。如果我像这样简单地添加 getScreentip
属性:
<button id="getLatestCEVersion" keytip="N" label="Download Latest" screentip="Download latest version of this CalcEngine" imageMso="MarkForDownload" onAction="RibbonXOnActionWithTag" tag="GetCurrentCalcEngine" size="large" getEnabled="RibbonXGetEnabled" getScreentip="RibbonXGetScreentip" />
从未调用功能区加载事件(通过 <customUI xmlns="http://schemas.microsoft.com/office/2009/07/customui" onLoad="RibbonXOnLoad">
设置)并且功能区未设置,因此当我尝试使功能区控件无效时抛出异常。
public void RibbonXOnLoad( IRibbonUI ribbon )
{
this.ribbon = ribbon;
}
我不认为我的代码对屏幕提示处理程序很重要,因为它甚至没有进入它,但它是:
public string RibbonXGetScreentip( IRibbonControl control )
{
switch ( control.Id )
{
case "getLatestCEVersion":
return "Download latest version of this CalcEngine";
case "checkInCalcEngine":
return "Check CalcEngine into Management Site";
case "checkOutCalcEngine":
return "Check CalcEngine out from Management Site";
default: throw new ArgumentOutOfRangeException();
}
}
ExcelDna 是否支持 getScreentip
?那里的信息不多,但我看到了一些据说正在使用它的样本,所以我认为它一定是。
当您在示例中添加 getScreentip
时,您的功能区定义将变得无效,因为 screentip
和 getScreentip
属性是互斥的 (根据 Microsoft 的 Ribbon XML 规范),它们不能一起使用。
即要使用 getScreentip
,请删除 screentip
属性。
没有放整条丝带xml,这是我的按钮:
<button id="getLatestCEVersion" keytip="N" label="Download Latest" screentip="Download latest version of this CalcEngine" imageMso="MarkForDownload" onAction="RibbonXOnActionWithTag" tag="GetCurrentCalcEngine" size="large" getEnabled="RibbonXGetEnabled" />
一切正常。如果我像这样简单地添加 getScreentip
属性:
<button id="getLatestCEVersion" keytip="N" label="Download Latest" screentip="Download latest version of this CalcEngine" imageMso="MarkForDownload" onAction="RibbonXOnActionWithTag" tag="GetCurrentCalcEngine" size="large" getEnabled="RibbonXGetEnabled" getScreentip="RibbonXGetScreentip" />
从未调用功能区加载事件(通过 <customUI xmlns="http://schemas.microsoft.com/office/2009/07/customui" onLoad="RibbonXOnLoad">
设置)并且功能区未设置,因此当我尝试使功能区控件无效时抛出异常。
public void RibbonXOnLoad( IRibbonUI ribbon )
{
this.ribbon = ribbon;
}
我不认为我的代码对屏幕提示处理程序很重要,因为它甚至没有进入它,但它是:
public string RibbonXGetScreentip( IRibbonControl control )
{
switch ( control.Id )
{
case "getLatestCEVersion":
return "Download latest version of this CalcEngine";
case "checkInCalcEngine":
return "Check CalcEngine into Management Site";
case "checkOutCalcEngine":
return "Check CalcEngine out from Management Site";
default: throw new ArgumentOutOfRangeException();
}
}
ExcelDna 是否支持 getScreentip
?那里的信息不多,但我看到了一些据说正在使用它的样本,所以我认为它一定是。
当您在示例中添加 getScreentip
时,您的功能区定义将变得无效,因为 screentip
和 getScreentip
属性是互斥的 (根据 Microsoft 的 Ribbon XML 规范),它们不能一起使用。
即要使用 getScreentip
,请删除 screentip
属性。