Tag: winforms

如何在C#.NET 3.5中更改进度条的颜色?

我想在我的进度条上做两件事情。 将绿色改为红色。 删除块,并在一个颜色。 任何有关这两件事我不知道如何完成的信息将非常appreaciated! 谢谢。

任务并行库replace为BackgroundWorker?

任务并行库是否有什么可以被认为是对BackgroundWorker类的替代或改进? 我有一个向导式UI的WinForms应用程序,它执行一些长时间运行的任务。 我希望能够有一个标准的进度条响应式的用户界面和取消操作的能力。 我之前用BackgroundWorker做过这个,但是我想知道是否有一些TPL模式可以用来代替?

禁用WinForm最小化和最大化?

WinForms的右上angular有三个框,用于最小化,最大化和closures表单。 我想要做的是去除最小化和最大化,同时保持closures。 我也是做什么使closures最小化的forms,而不是closures它。 如何才能做到这一点?

如何将UserControl放入Visual Studio工具箱

我在我的项目中做了一个用户控件,在构build项目之后,我需要将它放在我的工具箱中,并将其用作通用控件。 但我不能。 UserControl是在我的项目命名空间,我试图在右键菜单中Choose Item ,但我没有find一种方法来添加它。

在string集合中search最快的方法

问题: 我有一个约12万个用户(string)的文本文件,我想存储在一个集合中,然后在该集合上执行search。 每次用户更改文本TextBox的文本时都会发生search方法,并且结果应该是包含 TextBox本的string。 我不必更改列表,只需将结果ListBox到列表框中即可。 我到目前为止所尝试的是: 我尝试了两个不同的集合/容器,我从一个外部文本文件(当然是一次)转储string条目: List<string> allUsers; HashSet<string> allUsers; 通过以下的LINQ查询: allUsers.Where(item => item.Contains(textBox_search.Text)).ToList(); 我的search事件(用户更改search文本时触发): private void textBox_search_TextChanged(object sender, EventArgs e) { if (textBox_search.Text.Length > 2) { listBox_choices.DataSource = allUsers.Where(item => item.Contains(textBox_search.Text)).ToList(); } else { listBox_choices.DataSource = null; } } 结果: 两者都给了我一个很差的响应时间(每个按键之间大约1-3秒)。 题: 你认为我的瓶颈在哪里? 我用过的集合? search方法? 都? 我怎样才能获得更好的性能和更stream畅的function?

退出buttonclosuresC#窗体窗体

我已经尝试了以下内容: private void Form1_KeyDown(object sender, System.Windows.Forms.KeyEventArgs e) { if ((Keys) e.KeyValue == Keys.Escape) this.Close(); } 但它不起作用。 然后我试了这个: protected override void OnKeyDown(KeyEventArgs e) { base.OnKeyDown(e); if (e.KeyCode == Keys.Escape) this.Close(); } 而且还没有工作。 我的Windows窗体表单属性上的KeyPreview设置为true …我做错了什么?

在Linux上开发C#

我想知道是否有有效的开源工具在Linux(Ubuntu)上开发C#应用程序。 特别是我必须开发WinForm应用程序。 我知道Mono项目 ,但我从来没有使用它。 你能告诉我什么是最好的工具(IDE,编译器等)在Ubuntu上build立一个.NET开发环境吗? Linux上运行的软件是在Windows上运行的吗? 有不同的行为或不兼容?

我如何在C#中进行日志logging?

我想在我的应用程序中实现日志logging,但宁愿不使用任何外部框架,如log4net。 所以我想做一些像DOS的回应文件。 什么是最有效的方法呢? 有没有办法login未经处理的exceptionlogging而不使用外部框架?

我怎么知道系统滚动条的当前宽度?

如您所知,可以在“显示属性” – >“外观” – >“高级” – >“项目:滚动条”中自定义滚动条宽度。 默认值是17.但是,我不能认为这是总是这样的情况下,我可以检索这个值吗?

如何将分隔符添加到C#中的WinForms菜单?

在我的控制之下,我有: ContextMenu = new ContextMenu(); ContextMenu.MenuItems.Add(new MenuItem("&Add Item", onAddSpeaker)); ContextMenu.MenuItems.Add(new MenuItem("&Edit Item", onEditSpeaker)); ContextMenu.MenuItems.Add(new MenuItem("&Delete Item", onDeleteSpeaker)); ContextMenu.MenuItems.Add( ??? ); ContextMenu.MenuItems.Add(new MenuItem("Cancel")); 我做了什么菜单分隔符?