/// <summary> /// 重置缩放尺寸 /// </summary> /// <param name="clientSize">客户端大小</param> public void ResetScaleSize(SIZE clientSize) { INativeBase native = Native; if (native != null) { ControlHost host = native.Host; SIZE nativeSize = native.DisplaySize; List <ControlA> controls = native.GetControls(); int controlsSize = controls.Count; for (int i = 0; i < controlsSize; i++) { WindowFrameA frame = controls[i] as WindowFrameA; if (frame != null) { WindowEx window = frame.GetControls()[0] as WindowEx; if (window != null && !window.AnimateMoving) { POINT location = window.Location; if (location.x < 10 || location.x > nativeSize.cx - 10) { location.x = 0; } if (location.y < 30 || location.y > nativeSize.cy - 30) { location.y = 0; } window.Location = location; } } } native.ScaleSize = new SIZE((int)(clientSize.cx * m_scaleFactor), (int)(clientSize.cy * m_scaleFactor)); native.Update(); } }
/// <summary> /// 是否有窗体显示 /// </summary> /// <returns>是否显示</returns> public bool IsWindowShowing() { List <ControlA> controls = Native.GetControls(); int controlsSize = controls.Count; for (int i = 0; i < controlsSize; i++) { WindowFrameA frame = controls[i] as WindowFrameA; if (frame != null) { return(true); } } return(false); }