我创建了一个复合上下文动作,它返回几个带有以下文本的意图:
- [标签] 行动
- 第二次行动
现在我试图通过测试来覆盖这个动作。我按照指南做了所有事情,但我无法使用caret
符号识别第一个动作。
我尝试了以下选项:
{caret:[Tag]:Action}
{caret:Tag:Action}
他们的注意事项有效:(
如果我对 做同样的Second Action
事情,一切都很好。问题可能与括号有关。
我不想更改操作的名称。你能建议如何用括号指定动作吗?
谢谢!
更新
我找到了以下解决方法:
- 在数据文件中指定操作的别名:
{caret:TagAction}
. 覆盖
SelectItem
方法和调整属性protected override IBulbAction SelectItem(SetFrozenAttributeAction contextAction, string attribute, ITextControl textControl) { if (attribute == "TagAction") attribute = "[Tag] Action"; return base.SelectItem(contextAction, attribute, textControl); }
如果你知道更好的方法 - 建议它:)