com组件中有MS Agent Control 2.0 ,如何写方法使程序启动时只显示小精灵。在小精灵上点击弹出自定义菜单进行相应操作(关键再如何弹出菜单) 
private void axAgent1_ClickEvent(object sender, AxAgentObjects._AgentEvents_ClickEvent e)
        {
           if (e.button == MouseButtons.Left)//这一句报错
           {
                ContextMenu mm = new ContextMenu();
                mm.MenuItems.Add("sdsd");
                mm.Show();
           }
       }

解决方案 »

  1.   

    在Agent的Command事件中写即可:
    参考如下        private void Form1_Load(object sender, EventArgs e)
            {
                AgentShow();
            }
            private void AgentShow()
            {
                axAgent1.Characters.Load("xiaoM", (object)"Merlin.acs");
                Character = axAgent1.Characters["xiaoM"];
                Character.LanguageID = 0x409;
                Character.Show(null);
                Character.Speak("Hello World", null);
                Character.Play("Wave");
                Character.Commands.RemoveAll();
                Character.Commands.Visible = true;
                Character.Commands.Caption = "small m";            //定义右键菜单 
                Character.Commands.Add("Hello", "Hello", "Hello", true, true);
                Character.Commands.Add("Hellox", (object)"Say Hello", (object)"([say](hello ¦ hi) ¦ good (day ¦ morning ¦ evening))", (object)true, (object)true);
                Character.Commands.Add("Goodbye", (object)"Goodbye", (object)"(bye ¦ goodbye ¦ exit ¦ close ¦ quit)", (object)true, (object)true);        }
            ////////以下是定义右键的菜单的功能 
            protected void axAgent1_Command(object sender, AxAgentObjects._AgentEvents_CommandEvent e)
            {
                IAgentCtlUserInput ui;
                ui = (IAgentCtlUserInput)e.userInput;
                if (ui.Name == "Hellox")
                {
                    Character.Speak((object)"Hello. My name is tony." + " Pleased to meet you.", null);
                }
                else if (ui.Name == "Goodbye")
                {
                    Character.Speak((object)"It was nice talking to" + " you. Goodbye.", null);                Character.Play("Wave");
                    Character.Play("Hide");
                }
                else if (ui.Name == "Hello")
                {
                    Character.Speak("i am tony", null);
                }
                else
                {
                    Character.Speak("please chouse the menu", null);
                }
            }