我在具有多个显示器的设备上的C#WPF应用程序中使用AxMsRdpClient8NotSafeForScripting
ActiveX控件。大部分工作没有任何问题,但如果连接是在全屏模式下建立的,我无法将窗口移动到我的其他显示器。
控件作为子项加载到WindowsFormsHost
中,该DockPanel
位于WPF // '_rdp' is the ActiveX element
// 'RdpSettings' is a class created by me which holds some settings and informations
_rdp.AdvancedSettings2.DisplayConnectionBar = true;
if (RdpSettings.SmartSizing)
{
_rdp.DesktopWidth = (int)System.Windows.SystemParameters.PrimaryScreenWidth;
_rdp.DesktopHeight = (int)System.Windows.SystemParameters.PrimaryScreenHeight;
}
else if (RdpSettings.DesktopWidth == 0 && RdpSettings.DesktopHeight == 0)
{
if (RdpSettings.WindowStartMode == RdpSettings.RdpWindowStartMode.StartFullscreen)
{
_rdp.DesktopWidth = (int)System.Windows.SystemParameters.PrimaryScreenWidth;
_rdp.DesktopHeight = (int)System.Windows.SystemParameters.PrimaryScreenHeight;
}
else
{
_rdp.DesktopWidth = this.GetTransformedWidth();
_rdp.DesktopHeight = this.GetTransformedHeight();
}
}
else
{
_rdp.DesktopWidth = RdpSettings.DesktopWidth;
_rdp.DesktopHeight = RdpSettings.DesktopHeight;
}
_rdp.AdvancedSettings2.SmartSizing = RdpSettings.SmartSizing;
中。我正在进行以下ActiveX控件配置:
_rdp
还有一个_rdp.FullScreen = RdpSettings.WindowStartMode == RdpSettings.RdpWindowStartMode.StartFullscreen;
控制事件, OnConnected 。听力方法的第一行:
{{1}}
与我使用的配置完全无关 - 我无法将全屏RDP连接拖到另一台显示器上。
我做错了什么?
编辑:我在互联网上搜索了很多,并且还创建了一个新项目(仅使用所需的属性)试图实现该行为,但我仍然失败了。完全可以这样做吗?