2、菜单项"单条导入","批量导入".默认为置灰不可以用,但选择了文本内容后,恢复可以用
3、点击“单条导入”,打开自己开发的winform窗口,进行操作
问题:1、点击“单条导入”或"批量导入"打开winform窗口并关闭窗口后,再点击菜单项,菜单按钮事件不响应。
自己建了个空窗口,试了一下,打开并关闭窗口10次左右,菜单按钮事件不再响应。
2、如果实现上面的置灰不可以用和恢复可用功能
代码:
public void OnStartupComplete(ref System.Array custom)
{
object missing = System.Reflection.Missing.Value;
Microsoft.Office.Core.CommandBar menuBar = null;
// 一级菜单
menuBar = ((Microsoft.Office.Interop.Word.Application)this.applicationObject).CommandBars["Menu Bar"];
CommandBarButton ccbtn = null;
Microsoft.Office.Core.CommandBarPopup popuBar =
(Microsoft.Office.Core.CommandBarPopup)menuBar.Controls.Add(Microsoft.Office.Core.MsoControlType.msoControlPopup,
missing, missing, missing, true);
popuBar.Caption = "导入";
// 二级菜单
CommandBarButton btnRequirementProperty = (CommandBarButton)popuBar.Controls.Add(
Microsoft.Office.Core.MsoControlType.msoControlButton, 1, "", 1, true);
btnRequirementProperty.Caption = "单条导入";
btnRequirementProperty.Style = MsoButtonStyle.msoButtonCaption;
btnRequirementProperty.Click +=
new Microsoft.Office.Core._CommandBarButtonEvents_ClickEventHandler(this.MyButton_Click);
CommandBarButton btnCancelImport = (CommandBarButton)popuBar.Controls.Add(
Microsoft.Office.Core.MsoControlType.msoControlButton, 1, "", 1, true);
btnCancelImport.Caption = "批量导入";
btnCancelImport.Style = MsoButtonStyle.msoButtonCaption;
btnCancelImport.Click +=
new Microsoft.Office.Core._CommandBarButtonEvents_ClickEventHandler(this.MyButton_Click);
}
// 菜单自定义事件方法
private void MyButton_Click(CommandBarButton cmdBarbutton, ref bool cancel)
{
switch (cmdBarbutton.Caption)
{
case "单条导入":
Form1 frmLogin = new Form1();
frmLogin.Show();
//frmLogin.doc = this.applicationObject;
// System.Windows.Forms.MessageBox.Show(strName);
break;
case "批量导入":
Form1 frmLogin1 = new Form1();
frmLogin1.Show();
break;
default:
break;
}
}
拜托各位兄弟姐妹指点小弟了!!!
7 个解决方案
#1
自己顶一下
#2
自己UP
#3
LZ.结贴拿分
#4
终于有人回复:)
to:zhang523012313
指导一下小弟,怎么解决这两个问题 多谢
to:zhang523012313
指导一下小弟,怎么解决这两个问题 多谢
#5
有没有人在?
#6
#7
我一般都是设置一个布尔变量,相当于一个开关,初始状态:第一个开关开,其他关。当第一步操作完成后,设置第一个菜单的开关为false,设置其他开关为开。Menu.setEnabled(true);
#1
自己顶一下
#2
自己UP
#3
LZ.结贴拿分
#4
终于有人回复:)
to:zhang523012313
指导一下小弟,怎么解决这两个问题 多谢
to:zhang523012313
指导一下小弟,怎么解决这两个问题 多谢
#5
有没有人在?
#6
#7
我一般都是设置一个布尔变量,相当于一个开关,初始状态:第一个开关开,其他关。当第一步操作完成后,设置第一个菜单的开关为false,设置其他开关为开。Menu.setEnabled(true);