Tag: 窗口

防止显示一个表单的多个实例

我正在开发一个应用程序,其中有一个主要表单和几个可以同时使用的其他表单。 当用户点击打开另一个表单时,我想这样做,以便单击表单按钮,如果表单已经打开,则不会再次打开表单。 showDialog不会工作,因为用户仍然需要访问主窗体上的控件。 这是我的帮助窗口代码,所有其他表单以相同的方式打开。 private void heToolStripMenuItem_Click(object sender, EventArgs e) { Form help = new help(); help.Show(); }

WPF:Initialized和Loaded事件之间是什么?

我想在首次显示Window或Control时运行一些代码。 我不能使用Loaded,因为它可以不止一次。 我不能使用Initialized,因为这是由构造函数完成的。 介于两者之间的事件吗?

C#WPF)如何在showdialog()显示子模态窗口后最小化父窗口?

我在stackoverflow上搜索了一些post,并且一些讨论得出结论,因为它是WPF模态窗口的标准行为,因此无法做到这一点。 是不是真的有一个解决方案来从模态子窗口最小化(控制)父窗口? 黑客攻击或知道往返的任何人? 您的出色创意将永远受到高度赞赏。 谢谢 !

WPF:如何使自定义模式对话框闪烁?

通常,当您打开modal dialog并尝试单击它的父窗口时,modal dialog的标题栏会闪烁。 在WPF中创建自定义,无边框,无边框的窗口时,您将失去所有这些function,并且必须自己重建它。 我看起来高低,因为我的生活无法弄清楚如何让我的模态窗口闪烁。 虽然它仍然会发出哔哔声…… 我想我将不得不在WndProc中观察一些我必须处理的事件,但我无法弄清楚哪个事件或如何做到这一点。 我已经尝试观察窗口更改和窗口更改事件以及WM_ACTIVATE事件无济于事。 我确定我只是遗漏了一些简单的东西,但我会很感激你的帮助。 谢谢!

将窗口放入另一个窗口

我的下降事件 private void Window_Drop(object sender, DragEventArgs e) { var window = e.Data.GetData(typeof(Window)) as Window; if (window != null) { var tabitem = new TabItem(); tabitem.Content = window.Content; tabcontrol1.Items.Add(tabitem); window.Close(); } } 我的主窗口XAML 什么都没发生,任何想法为什么? 如何将应用程序中的任何窗口拖放到主窗口中? 展示我想要做的事情 tabitem5和tabitem2被拖到主窗口之外,因此成为独立的窗口,现在我试图通过将它们拖动到主窗口来反转过程并再次使它们成为标签 我正在给予完整代码示例的赏金,选项卡到窗口和窗口到选项卡,mvvm解决方案也是可以接受的

C#打印屏幕活动窗口

我目前正在尝试使用Visual C#打印一个活动窗口。 我有这个代码: SaveFileDialog saveImageDialog = new SaveFileDialog(); saveImageDialog.Title = “Select output file:”; saveImageDialog.Filter = “JPeg Image|*.jpg|Bitmap Image|*.bmp|Gif Image|*.gif”; //saveImageDialog.FileName = printFileName; if (saveImageDialog.ShowDialog() == DialogResult.OK) { // Set the bitmap object to the size of the screen bmpScreenshot = new Bitmap(this.Bounds.Width, this.Bounds.Height, PixelFormat.Format32bppArgb); // Create a graphics object from the bitmap gfxScreenshot = Graphics.FromImage(bmpScreenshot); […]

在鼠标位置(鼠标左上角)显示WPF窗口的最佳方法是什么?

通过inheritanceWindows窗体鼠标点并减去窗口的高度和宽度来设置左侧和顶部(因为我的窗口大小是固定的),我发现这部分时间是有效的: MyWindowObjectThatInheritsWindow window = new MyWindowObjectThatInheritsWindow(); System.Windows.Point mouseLocation = GetMousePositionWindowsForms(); window.Left = mouseLocation.X – 300; window.Top = mouseLocation.Y – 240; window.Show(); 编辑:这是获取鼠标位置的代码… public System.Windows.Point GetMousePositionWindowsForms() { System.Drawing.Point point = System.Windows.Forms.Control.MousePosition; return new System.Windows.Point(point.X, point.Y); } 请注意,这可以通过使窗口的右下边缘触摸鼠标光标的左上角来实现。 但是这会打破不同的屏幕分辨率,或者可能是具有不同分辨率的多个显示器? 我还没有完全缩小它,但我只是在另一台PC上尝试了相同的代码,它似乎产生的窗口不是鼠标光标的左上角,而是它的左下角,并且距离很远过去… 我应该添加我的窗口大小到内容,宽度和高度,所以我不能只使用ActualWidth和ActualHeight属性,因为它们不可用。 也许问题在于确保调整正确吗? 有没有办法做到这一点? 我确定300和240是正确的,根据我的主PC和两台显示器运行1920×1080分辨率,因为我已经计算了我明确resize的窗口中所有对象的宽度和高度。 编辑:只是尝试明确地将高度和宽度设置为240/300,以确保窗口不再按内容大小,并且在减去实际高度和宽度时仍然存在此问题! 有任何想法吗?

用于检查页面何时完成加载的代码

如何检查页面是否已完成加载? 如果有,我如何执行已在该页面后面的C#代码中创建的方法? 我想协调以下一系列事件 完成加载页面 将gridview作为Excel文件下载到页面中 调用此方法download() 关闭浏览器 我怎么能做到这一点?

如何获得WPF窗口的静态引用?

我已经尝试了很多方法来获取我的程序中窗口的静态引用。 我需要在运行时从不同的类访问其所有成员,因此需要静态引用。 我想要的是Program.Window1 ,其中Core是静态的, MyWindow是其静态成员之一。 在WinForms中,我通常在Program.cs中声明我的静态表单,但这似乎不适用于WPF及其自定义的“App.xaml”ApplicationDefinition。 我该怎么做? 注意:我已经尝试了很多方法:使用直接调用新窗口(即Program.Window1 = new Window1() )将不起作用,因为我得到一些线程无效exception。 据我所知,到目前为止,只有ApplicationDefinitions可以在WPF中启动窗口。 每当我尝试按“代码”而不是默认的XAML ApplicationDefinition的StartupUri创建一个窗口时,这是个例外: 调用线程必须是STA,因为许多UI组件都需要这个。

在XNA中统一调整窗口大小

好吧,我试图让我的游戏窗口能够统一resize。 我到处检查过,但我似乎找不到任何关于它的信息。 有任何想法吗? 由于字符限制,我无法发布代码。 非常感谢有人可以帮助我,看看我做错了什么:) 同样有用的是如何在发生这种情况时调整后备缓冲区的大小,因为我不认为只有一半的精灵可以玩游戏:) void Window_ClientSizeChanged( object sender, EventArgs e ) { int new_width = graphics.GraphicsDevice.Viewport.Width; int new_height = graphics.GraphicsDevice.Viewport.Height; if (new_width != Variables.SCREEN_WIDTH) { Variables.SCREEN_HEIGHT = (int)(new_width * ascept_ratio); Variables.SCREEN_WIDTH = new_width; } if (new_height != Variables.SCREEN_HEIGHT) { Variables.SCREEN_WIDTH = (int)(new_height / ascept_ratio); Variables.SCREEN_HEIGHT = new_height; } UpdateParameters(); } … public void […]