正常情况:
在winform中,在Form a 中点击按钮弹出新的Form a, b显示在a上,a无法被选择,这个思路是对的。
不正常情况:
但是cefSharp中js 调用winform C#代码, winform中弹出Form, 那个这个Form竟然不在原先的Form中,可以被隐藏的后面,可以操作原先的窗口,这个就不正常了。
解决:
这个问题我解决了好久,都没有解决,因为我是一个小新手,设置好多的属性,都没有用。后来我设置Form.TopMost = true,竟然报错了,我就想到是线程的问题。把这个弹出窗口放到UI主线程执行,就可以了。代码如下:
/// <summary>
/// Access the GUI thread
/// </summary>
/// <param name="control"></param>
/// <param name="code"></param>
static public void InvokeOnUIifRequired(Control control, MethodInvoker code)
{