2
我刚刚开始从VBA迁移到C#。我有大约100个VBA宏进行转换,其中大约25个要么在自定义功能区条目中,要么映射到诸如alt-P之类的按键。如何将VSTO C#代码连接到功能区和/或键盘快捷键
唯一的reference我可以找到说我需要保留一些VBA代码才能做到这一点。这样的解决方案是完全不可接受的,我想完全免除VBA。我不禁想到这就像在特斯拉的特大号干草中饲养一捆干草来养活这匹马。
有没有更好的方法?
我刚刚开始从VBA迁移到C#。我有大约100个VBA宏进行转换,其中大约25个要么在自定义功能区条目中,要么映射到诸如alt-P之类的按键。如何将VSTO C#代码连接到功能区和/或键盘快捷键
唯一的reference我可以找到说我需要保留一些VBA代码才能做到这一点。这样的解决方案是完全不可接受的,我想完全免除VBA。我不禁想到这就像在特斯拉的特大号干草中饲养一捆干草来养活这匹马。
有没有更好的方法?
按[Alt]键获取keytip参考。按照以下我想引用“脚本帮助”功能区是“Y2”。
然后按[ALT] + “Y” + “2” 以显示该色带控制按键提示控制的引用。根据以下我想参考“清洁数据”按钮是“Y7”。
然后你可以使用的SendKeys按了按键提示引用。通过添加下面的代码。
public void CallButtonFromAnotherRibbon()
{
try
{
SendKeys.Send("%");
SendKeys.Send("Y");
SendKeys.Send("2");
SendKeys.Send("%");
SendKeys.Send("Y");
SendKeys.Send("7");
}
catch (Exception ex)
{
MessageBox.Show(ex.ToString(), "Unexpected Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
}
您是否尝试过使用 '快捷键提示'? http://stackoverflow.com/questions/12774412/how-to-set-keytip-on-a-ribbon – therea1wags