草庐IT

WinForms-App

全部标签

c# - 如何将类似控制台的元素添加到 c# winforms 程序

我有一个监视调试消息的程序,我尝试使用TextBox并将消息附加到它,但它不能很好地扩展,并且当消息数量变大时速度会变慢。然后,我尝试了一个ListBox,但在添加新消息时,滚动会快速移动到顶部。它也不允许像文本框那样进行剪切和粘贴。在winforms窗口中实现类似控制台的元素的更好方法是什么。编辑:我仍然希望能够嵌入像visualstudio这样的输出窗口,但由于我无法找到一种简单的方法,因此我使用了两种解决方案。除了使用有效的RichTextBox之外,您还必须时不时地清除它。我使用pinvoke的控制台。这是我为处理此问题而编写的一个小包装类。usingSystem;usingS

c# - 哪个运行时性能更快 : WPF or Winforms?

我知道WPF更复杂、更灵活,因此可以考虑进行更多计算。但是由于渲染是在GPU上完成的,对于相同的应用程序(功能和视觉),它不会比Winforms更快吗?我的意思是,当您不运行任何游戏或进行繁重的3D渲染时,GPU不会执行繁重的工作,对吧?而CPU总是很忙。这是一个有效的假设还是WPF的GPU利用率是其管道中非常小的操作?编辑:我感兴趣的应用程序是一个3d建模和动画软件,您可以在其中使用3d视口(viewport)导航和编辑场景以及场景中的对象。但我想使用WPF,因为它的现代架构,而且是从头开始。EDIT2:同样出于我的目的,由于软件的高端要求,我将对应用程序本身使用DirectX。至于

C# WinForms - 任何人都知道 C# GDI 库而不是 SLOW GDI+

GDI+非常慢,几乎完全是软件,而GDI是高度硬件加速的。GDI+是Graphics类在WinForms上使用的东西,它太慢了。有没有人制作了.NETGDI库以便我们可以有速度?[编辑]许多人都在推荐OpenGL/DirectX。我的一个要求是客户端兼容性,尤其是远程桌面。AFAIK远程桌面不支持开箱即用的OGL/DirectX。[/EDIT] 最佳答案 GDI+中的文本呈现比GDI慢。Microsoft在.NET1.1之后意识到了这一点。这就是为什么.NET2.0包含一个新的TextRenderer包装GDI的类DrawText.

c# - 如果内容字符串宽度大于 ListBox 宽度,Winforms DotNet ListBox 项目是否自动换行?

嗯,嗯,这意味着一些行的大小应该是两行的。我的老板认为这是更简单的解决方案,而不是将显示的文本限制为适合宽度并且不喜欢水平滚动条>_ 最佳答案 lst.DrawMode=System.Windows.Forms.DrawMode.OwnerDrawVariable;lst.MeasureItem+=lst_MeasureItem;lst.DrawItem+=lst_DrawItem;privatevoidlst_MeasureItem(objectsender,MeasureItemEventArgse){e.ItemHeight=

c# - Winforms 进度条不更新 (C#)

在我的程序中[C#+winforms]。我有进度条和ListView。通过一种方法,我正在执行一些操作,然后更新Listview中的数据。添加的记录数是我为ProgressBar.value属性设置的值。我在这里想要的是,根据进度条的值,它应该显示它的进度。但是进度条没有得到更新。仅在方法执行进度条结束时显示整个进度,即100%有人可以在这方面帮助我吗?谢谢,阿米特 最佳答案 听起来您正在阻塞UI线程-即您还没有释放系统来进行任何绘画。一个hacky的答案是将Application.DoEvents()注入(inject)到您的代码

c# - 在 C# 中以编程方式从 app.config 访问 system.net 设置

我正在尝试以编程方式访问Windows应用程序app.config文件。特别是,我正在尝试访问“system.net/mailSettings”以下代码Configurationconfig=ConfigurationManager.OpenExeConfiguration(configFileName);MailSettingsSectionGroupsettings=(MailSettingsSectionGroup)config.GetSectionGroup(@"system.net/mailSettings");Console.WriteLine(settings.Smtp.

c# - 在文本框中显示列表<String> (Winforms)

菜鸟问题...我正在尝试在文本框中显示一个列表...不幸的是,我的代码只显示列表中的第一个元素...privatevoidForm1_Load(objectsender,EventArgse){Listvegetables=newList();vegetables.Add("tomato");vegetables.Add("carrot");vegetables.Add("celery");vegetables.Add("potato");textBox1.Text=displayMembers(vegetables);}publicstringdisplayMembers(Listv

C# 如何在 winforms 应用程序中隐藏光标?

我正在开发一个触摸屏应用程序,我需要在光标位于主窗体中时隐藏它。有什么想法吗? 最佳答案 简单的说Cursor.Hide();是我在表单构造函数中所需要的。 关于C#如何在winforms应用程序中隐藏光标?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/457360/

c# - 如何从另一个程序集读取 app.config?

我有两个项目:控制台项目(Test.exe)类库项目(Test.Data.dll)我的类库项目包含一个app.config文件。我想从控制台项目访问类库中的设置,所以我试过:varconfig=ConfigurationManager.OpenExeConfiguration("Test.Data.dll");config.ConnectionStrings.ConnectionStrings[0].Name;//LocalSqlServer//seemstobethewrongassembly.和:varconfig=ConfigurationManager.OpenExeConfi

c# - 无法使用 ConfigurationManager 在 C# .NET Core 单元测试项目中读取 app.config

我创建了一个简单的单元测试项目来读取app.config文件。目标框架是Core2.0。我还创建了一个Core2.0控制台应用程序,以健全地检查自己以确保我没有做任何奇怪的事情(相同的测试按预期在.NET4.6.1单元测试项目中通过)。控制台应用程序读取app.config正常,但单元测试方法失败,我无法弄清楚原因。两者都使用相同app.config的副本(未添加为链接)并且都安装了System.Configuration.ConfigurationManagerv4.4.1NuGet包。App.config单元测试usingMicrosoft.VisualStudio.TestToo