0
我发展与2个组件的应用程序:的ActiveForm是空,无法激活它
- ,打印在控制台上的东西的语音识别器;
- 谷歌地图(与GMap.NET DLL)的窗体。
有时候,语音识别器只是停下来,其他时候谷歌地图的互动什么都不做。当发生这种情况时,唯一的解决方案是重新运行程序。停止似乎是随机的,因为有时我可以做任何命令之前,它的任何开始忽略我。 我发现我需要调用表单作为Google地图交互的创建者才能与地图交互,但是,有时System.Windows.Forms.Form.ActiveForm返回null,我无法调用它。我认为这是导致我遇到的所有问题的问题。
是否有任何解决方法或提示? 非常感谢提前。
if (System.Windows.Forms.Form.ActiveForm == null)
{
Console.WriteLine(Application.OpenForms.ToString());
//System.Windows.Forms.Form.ActiveForm.Activate();
Console.WriteLine("Active form is null");
}
else if (System.Windows.Forms.Form.ActiveForm.InvokeRequired)
{
CallBack d = new CallBack(run);
System.Windows.Forms.Form.ActiveForm.BeginInvoke(d, new object[] { obj });
}
请输入一些代码 –
编辑添加部分代码。即使语音识别器正在工作(并且打印内容),当“映射无法响应”时,“主动格式为空” –