草庐IT

c# - 数据绑定(bind)到 WinForm

我有一个包含10个文本框的表单(CustomerInfoForm)。每个TextBoxes的默认Text属性是在设计时定义的。子类CustomerInfoForm.CustomerInfo包含用于保存在表单中输入的数据的属性。包含数据的子类将序列化为XML。在自动生成的表单代码中,每个文本框都有一行代码将数据源绑定(bind)到文本框this.customerInfoBindingSource=newSystem.Windows.Forms.BindingSource(this.components);C#ide为每个文本框自动生成的代码:this.txtCustomer.DataBi

windows - 需要关于用不可见的 WinForm 应用程序替换 Windows 服务的建议

我需要一个后台应用程序来支持我的客户端应用程序,无论主客户端应用程序是否正在运行,它都应该始终在客户端计算机上运行。WindowsService是我的第一选择,但我遇到的问题是:通过主客户端应用程序轻松控制windows服务,发布和安装windows服务的补丁以及windows服务无法运行时的故障排除。因此,我开始考虑Windows服务的替代方案,并发现没有可见窗体的Windows窗体应用程序可以为我做这件事。这个不可见的应用程序应该从系统启动时开始,并一直保持运行,完成Windows服务可以完成的所有工作。但在深入开发之前,我想探讨一下这种方法的优缺点。对这种方法有什么建议/意见吗?

windows - 你如何自动调整winform?

我有一个表格..我想把它从1000x1000变成400x400..当我在设计模式下拖动它时..出现滚动条并且它的内容不会随着我的缩小而按比例缩小(通过向内拖动winform窗体的角)..如何通过鼠标拖动自动调整表单内容的大小? 最佳答案 查看控件的Dock和Anchor属性。Winforms不像WPF对其矢量那样进行缩放——它是基于像素的。要么那样,要么确保你的AutoScrollMinSize等于0,0例如:在按钮上,如果我突出显示我的anchor的灰色条,该按钮将与表单的右下角一起移动。

c# - Winform应用程序在XP系统上闪烁

您好,我有一个Windows应用程序(winform.netframework4)。该应用程序在WindowsXP系统上闪烁很多。我添加了代码:protectedoverrideCreateParamsCreateParams{get{CreateParamscp=base.CreateParams;cp.ExStyle|=0x02000000;//TurnonWS_EX_COMPOSITEDreturncp;}}当我添加上面的代码时,闪烁被移除了。它在我的windows732位开发系统上运行良好,但在WindowsXP上闪烁增加并且背景图像也未加载。有没有什么办法可以在所有的wind

c# - 从线程访问和更改 winform webbrowser

我正在开发Windows应用程序,其中有一个tabControl,用户可以在其中打开多个选项卡,就像IE一样。现在我必须访问选定的选项卡,然后必须对打开的文档执行一些操作。我能够访问它,但是在访问选定的选项卡并执行操作之后当我使用另一个线程执行此任务时,应用程序挂起。请建议我该怎么做。我正在使用.net4.0。C#看下面的代码,这段代码在点击按钮上TextToSpeechThread=newThread(newThreadStart(ReadWebDocument));TextToSpeechThread.Name=ApplicationManager.GlobalThreadNami

windows - 将 Windows 窗体应用程序转换为 Metro UI 应用程序

我使用VisualStudio2012Desktop用C#创建了一个Windows窗体应用程序。它在Windows8上运行良好,从Win8开始菜单,我可以单击它(我必须在开始菜单中放置一个快捷方式)但切换到桌面,然后像任何普通桌面应用程序一样打开一个窗口。有没有办法让它像Microsoft应用程序一样打开,而不是先切换到桌面?像IE和Skype这样的东西就是这样做的——它基本上就像一个单一的应用程序模式。我真的不知道该怎么调用它,因为我是Win8Metro的新手。我觉得我需要用WPF重写这个东西。这是真的?谢谢。 最佳答案 我觉得挺

c# - 在 32 位机器上部署 64 位 C# winform 应用程序

我已经在64位机器上使用VS2012开发了一个C#winform应用程序,现在我想将它部署到32位机器上,但是我得到了“...不是有效的win32应用程序”形式的错误"每当我尝试在32位机器上安装和运行exe文件时。请建议我解决这种情况的最佳方法。谢谢! 最佳答案 听起来该项目是专门为x64编译的。纯.NET项目可以而且应该编译为“任何CPU”,这意味着它们将在x86和x64上运行。这通常是默认值。http://blogs.microsoft.co.il/sasha/2012/04/04/what-anycpu-really-mea

C# - 如何在不使用 winform 的情况下在命令行 exe 中单击鼠标

我看到了一些“相似”的问题。但是答案总是要求提问者使用winform。我需要100%的控制台应用程序,它可以连接到Windows消息队列并提供鼠标点击点。鼠标点击可以发生在窗口的任何地方。我做了什么:我使用winforms完美地完成了这个。实际上我从一个博客中复制了大部分代码。这是工作。但我目前的项目是“自动化测试”。在这里,我们必须将大多数应用程序作为控制台应用程序启动。否则操作会变得一团糟。我尝试使用IMessageFilter,然后我才知道它需要表单。谁能指导我正确的方向?注意:我使用的是Windows7、.Net4.5、VisualStudioExpress-2012编辑:我根

c# - 如何从 winform 启动 Windows 通用应用程序

我正在尝试使用以下代码从我的winform运行Windows通用应用程序,但不幸的是它打开了文档文件夹。我是UWP应用程序开发的新手。这是启动UWP应用程序的正确方法吗?Processp=newProcess();ProcessStartInfostartInfo=newProcessStartInfo();startInfo.FileName="explorer.exe";startInfo.Arguments=@"shell:appsFolder\Microsoft.SDKSamples.CameraAdvancedCapture.CS_8wekyb3d8bbwe!App";p.S

c# winform 屏幕分辨率

我有一个C#WinForms应用程序,当我将可执行文件提供给不同的用户时,该应用程序以不同的大小显示(基于他们的屏幕分辨率)。无法看到应用程序的某些部分。如何为我的表单设置绝对1280X800并确保无论分辨率如何,表单大小都不会改变! 最佳答案 您可以使用Control.ScaleControl和Control.ScaleprivatevoidMainForm_Load(objectsender,EventArgse){floatwidth_ratio=(Screen.PrimaryScreen.Bounds.Width/1280)