嗨我带有复选框的Windows表单。我想启用/禁用单个按钮附加到我的功能区。伤人有人告诉我一个正确的方法吗?
部分XML代码功能区看起来像这样
<tab idMso="TabNewMailMessage">
<group id="Kompresja2"
label="Lab1">
<toggleButton id="Kompresja6"
imageMso="Smile"
onAction="ProcedureX"
getPressed="Wcisnieto"
getEnabled="Czytaj_stan"
label="Lab2"
size="large"
/>
</group>
</tab>
答案 0 :(得分:1)
getEnabled回调函数(在您的情况下为Czytaj_stan
)检查按钮是否已启用 - 如果按钮应为
则返回True
启用,否则为假。
每当功能区控件无效时,都会调用getEnabled回调函数,这就是办公室应用程序决定需要它时,例如,当它被最小化时,或者通过调用[IRibbonUI-object].InvalidateControl("Kompresja6")
使该控件无效或[IRibbonUI-object].Invalidate()
重绘整个功能区([IRibbonUI-object].InvalidateControlMso("ID")
使内置控件无效)来实现它。
为了完成这项工作,您需要:
<customUI xmlns="http://schemas.microsoft.com/office/2009/07/customui" onLoad="Ribbon_Load">
。Ribbon_Load
回调函数并设置对IRibbonUI
- 参数的引用。Czytaj_stan
以决定何时启用该按钮。Czytaj_stan
中启用/禁用的条件,然后调用[IRibbonUI-object].InvalidateControl("Kompresja6")
使功能区按钮无效。