Articles of winforms

在窗体中绘制带有resize点的控件select矩形

我想绘制一个矩形与所选控件的大小调整点,如下图所示。 我使用了控件的绘画事件,并且能够为选定的控件绘制一个边框。 Rectangle borderRectangle = new Rectangle(0, 0, this.Width, this.Height); ControlPaint.DrawBorder(e.Graphics, borderRectangle, Color.Black,System.Windows.Forms.ButtonBorderStyle.Dotted); 我们是否有任何选项可以包含Windows窗体devise器中的function? 请build议给我一个相同的方法。 提前致谢, ķ

带来另一个进程的窗口

我有一个C遗产应用程序,这个程序随着时间的推移(它的服务器应用程序)打开和closures窗口。 在同一台机器上,我正在运行一个C#winforms应用程序。 这是我的目标:我的C#应用​​程序发送我的C应用程序一个win32消息。 C应用程序打开窗口。 我希望新打开的C窗口在前面,在我的C#应用​​程序的前面。 这是目前的过程: C#向C发送win32消息 C接收并打开新窗口 C试图使自己前进 (我现在想知道C#是否应该告诉C“把自己带到我面前”) 编辑我已经完成了一切,除了我得到C窗口以某种方式来到前面的部分。 我目前消息的C应用程序,并打开新窗口(在同一个.exe的所有其他窗口的前面),但在我的C#应用​​程序。 我试过使用 [DllImport("user32.dll")] static extern bool AllowSetForegroundWindow(ServerWindowHandle); 但没有运气。 我不知何故需要让我的C应用程序拥有我的.net应用程序的“所有权”? C#应用程序通过programinvoke启动。

如何禁用或自定义图像预览,当用户将鼠标hover在任务栏上的应用程序图标上时显示图像预览?

在带有Aero的Windows中…当用户将鼠标hover在应用程序的图标上时,应用程序的一个小预览就出现在任务栏上方。 我正在寻找任何有关如何禁用此预览的信息,或者更改/自定义在这个小预览图像框中显示的内容。 请注意,我不打算作为用户禁用Aerofunction – 我正在寻找控制这个应用程序。 预先感谢您的答案!

如何从.cpp文件访问文本框?

如何从.cpp文件访问Form1.h (在Windows窗体上)的文本框? 我希望当用户按下窗体上的button时,一些文本被添加到同一窗体上的文本框。 当button被按下时,我想调用.cpp文件中的一个类,(在一些计算和什么之后)添加一些文本到文本框。 我一直试图弄清楚这一点,但无济于事。 有谁愿意分享我可以做到这一点? 任何帮助,将不胜感激。

绘制在字面上的一切

我想为在后台运行的玩家创build一个实用程序。 我需要做的是在某些场合在游戏中显示可见消息 。 所以我的窗口不需要一直显示,但是在某些事件(按键组合,我有工具来注册全局键)时,它应该popup。 我开始在WPF中进行开发,如果我将Window属性设置为true,它将保持在最前,只要我不启动另一个应用程序,它将成为最顶层的应用程序。 当然,游戏确实是最顶层的,所以我的窗口是不可见的。 我应该如何在WPF中解决这个问题(如果甚至可以解决的话)? 如果Winforms中有一个简单的解决scheme,我也欢迎。 即使是C ++ OpenGL解决scheme或提示也会派上用场。 我知道这不是一件小事,但是可以做到。 一个很好的例子就是Xfire,在这里用户可以在玩游戏的同时聊天。

方法为“之后”button点击

我有一个winform,我想按下Xbutton后应用方法,问题是,winform只给你以下选项,FormClosing或FormClosed private void MailNamen_FormClosing(object sender, FormClosingEventArgs e) { } //Or private void MailNamen_FormClosed(object sender, FormClosedEventArgs e) { } 有没有我的方式,我可以让它做一些事情,当用户实际上点击它,而不是用它来掩盖的情况下,当没有用户closures窗体点击X? 先谢谢了!

这是TextBox控件之间不一致的行为

我只做了一个简单的笔记应用程序,并且我多次注意到Windows Forms应用程序中的TextBox控件不支持由Tab退格。 不过,我注意到,网站中的“TextBox”控件(大部分都是这样)以及WPF应用程序中的TextBox控件也支持由Tab退格。 如果您不确定我的意思,请input由空格分隔的几个单词,然后按住Ctrl键并点击退格键。 你会注意到,它不仅仅是一个退格,而是一个完整的标签空间。 为什么这种行为如此不一致? 这是因为只有文本input控件的更新版本支持这种行为? 这与我的键盘设置有关吗? 问题 :在Windows窗体应用程序的TextBox Control ,我应该如何最好地实现/强制一个Back-Tab空间,同时还要尊重用户的Windows Tab间距设置(即Tab键在点击时会产生多less个空格)? 注意:在不支持此function的控件中,只需在当前的插入位置放置一个奇怪的方形符号。 我试过在这个TextBox中粘贴这个符号,但是它不会出现。

什么是选项卡控件?

从最基本的意义上说,什么是制表符控制? 我正在从头开始创build一个(我有很多很好的理由,只是扩展现有的不会让我感觉更好)。 但我不确定他们是如何制造的。 是一个选项卡控制只是一堆面板,在一个主面板? 这是我的意思是…

应用程序内存使用跟踪

我们有C#.Net Windows应用程序,我需要知道如何获得我的应用程序的内存消耗细节。 我已经尝试过System.Diagnostics.Process获取当前进程的内存信息。 我需要知道内存中有多less个对象,以及每个对象的内存消耗细节。

System.Diagnostics.Process无法从Windows窗体应用程序中的映射驱动器启动文件

我有一个Windows应用程序在VS2010中使用VB.NET和.NET 3.5。 它是无形的,非常简单,假设它是一个string,它将“启动”剪贴板的内容。 请注意,这不是ASP.NET,与Web应用程序无关。 这是代码的核心: Dim proc As New Process() proc.StartInfo.FileName = strClipboard proc.StartInfo.UseShellExecute = True proc.StartInfo.CreateNoWindow = True proc.Start() 多年来,它工作得很好。 如果用户有一个文件path,说:“c:\ temp \ file.txt”保存为系统剪贴板中的一个string,他们可以运行这个应用程序(键入分配给一个鼠标button),这就像去开始>运行,粘贴文本,然后按Enter键。 最近,我们的系统发生了一些变化。 不知道是什么,但我怀疑它与我们所有的新服务器configuration更改和/或组策略,因为现在它不会在任何映射的驱动器上工作。 例如,这工作得很好: C:\Temp\test.txt 但不是这样的: L:\Temp\test.txt L是我们本地文件服务器上的映射驱动器。 我从exception中得到的错误只是它找不到文件: System.ComponentModel.Win32Exception was caught ErrorCode=-2147467259 Message=The system cannot find the path specified NativeErrorCode=3 Source=System StackTrace: at System.Diagnostics.Process.StartWithShellExecuteEx(ProcessStartInfo startInfo) at VS10_Launch_Clipboard.Launch_Clipboard.Main() in C:\Users\user\Documents\Visual Studio […]