Tag: 最大化

.Net / Winforms,双显示器 – 无边框窗口 – 最大化不起作用

我有一个没有回答的问题 http://social.msdn.microsoft.com/Forums/en-US/wpf/thread/fa521007-f317-48f1-9cdd-de2dbcb17aa8 (最后的post是我的post)。 StackOverflow是更好的论坛所以你能帮助我:) 简述: 双显示器配置,右侧主显示器具有较低分辨率,左侧显示器具有较高分辨率(低:1280×1024;高:1680×1050)。 最大化时,窗口大于监视器(仅适用于左侧监视器) 在无边框窗口基类上工作 最大化到实际客户区域不能按预期工作。 解决方法是添加一个WndProc钩子并摆弄尺寸参数。 多显示器支持增加了一些问题,因为最大化似乎依赖于MaxTrackSize而不是MaxSize。 这似乎只在主监视器小于第二个监视器时才会发生 我在规范中找到的东西: http://msdn.microsoft.com/en-us/library/ms632605(v=VS.85).aspx 对于具有多个监视器的系统,ptMaxSize和ptMaxPosition成员描述主监视器上窗口的最大化大小和位置,即使窗口最终最大化到辅助监视器上也是如此。 在这种情况下,窗口管理器会调整这些值以补偿主监视器和显示窗口的监视器之间的差异。 因此,如果用户不接触ptMaxSize,则监视器上的窗口大于主监视器的窗口最大化到较大监视器的大小。 因此,如果我在我的情况下正确理解,当有任务栏被放置在最大化窗口下不隐藏它时, 不可能在屏幕上以最高分辨率最大化? 干杯,jbk

在WPF UserControl上使用Rx over事件,为什么当窗口最大化时控件会收到mousedown和mousemove?

这个让我有点困惑。 我在UIElement上编写了一些扩展方法,为一些鼠标事件提供Observable。 以下是相关的: public static IObservable<EventPattern> ObserveMouseLeftButtonDown(this UIElement element) { return Observable.FromEventPattern(element, “MouseLeftButtonDown”); } public static IObservable<EventPattern> ObserveMouseMove(this UIElement element) { return Observable.FromEventPattern(element, “MouseMove”); } 到目前为止,这简直令人费解。 然后我创建一个复合事件来检测用户何时开始拖动UIElement(这全部由我的自定义控件使用,其确切性质并不特别相关)。 首先,这是一个小辅助函数,用于查看用户是否拖动了最小拖动距离: private static bool MinimumDragSeen(Point start, Point end) { return Math.Abs(end.X – start.X) >= SystemParameters.MinimumHorizontalDragDistance || Math.Abs(end.Y – start.Y) >= SystemParameters.MinimumVerticalDragDistance; } 然后复合观察本身: public static IObservable<EventPattern> ObserveMouseDrag(this UIElement […]

最大化2监视器上的WPF窗口

喜欢标题我希望我的WPF在2台显示器上最大化(现在我的电脑有2台显示器)。 我设置 this.Width = System.Windows.Forms.Screen.AllScreens[0].Bounds.Width + System.Windows.Forms.Screen.AllScreens[1].Bounds.Width 但它不完整,像图像一样间隔。 我希望用户单击最大化按钮然后窗口最大化2监视器。 有人知道吗? 谢谢你们! p / s:抱歉我的英语不好。

最大化MDI子表单

我正在研究一个传统的WinForms MDI应用程序,并且在使子表单按我的意愿运行时遇到一些麻烦。 我的目标是让孩子的forms始终最大化(停靠)。 问题是,即使我将MaximizeBox设置为false ,MDI工具条中也会出现最大化/resize按钮,并让用户调整(取消停靠)子窗体。 避免这种情况的唯一方法是将ControlBox设置为false ,然后关闭按钮消失(这不是我想要的)。 我已经尝试使用固定的FormBorderStyle并在触发resize事件时最大化子窗体但我的方法都没有工作。 我错过了什么超级秘密财产,还是不可能? 最好的问候和提前谢谢 更新 我写了一个低级方法(感谢@rfresia)处理我的子表单,它可能会帮助其他遇到同样问题的人: //All child forms derive from ChildForm //Parent MDI Form implementation //… private void ShowForm(ChildForm form) { //Check if an instance of the form already exists if (Forms.Any(x => x.GetType() == form.GetType())) { var f = Forms.First(x => x.GetType() == form.GetType()); f.Focus(); f.WindowState = […]

在WPF中启用最大化,最小化和还原窗口(禁用手动resize)

我需要在我的应用程序(C#WPF应用程序)上启用以下内容: 正常尺寸为1024 * 768 用户可以最大化应用程序 用户可以最小化应用程序 用户可以恢复应用程序(1024 * 768) 用户无法通过拖动边框手动调整应用程序的大小。 没有任何ResizeMode满足所有这些要求。 有什么办法吗?