Questions tagged «winforms»

WinForms是Windows Forms的非正式名称,Windows Forms是Microsoft .NET Framework和Mono中的GUI类库。此标签中的问题还应使用目标框架([.net]或[mono])进行标签,并且通常应使用编程语言标签进行标签。

7
如何在字符串中写反斜杠(\)?
我想写这样的事情C:\Users\UserName\Documents\Tasks在textbox: txtPath.Text = Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments)+"\Tasks"; 我得到错误: 无法识别的转义序列。 如何在字符串中写反斜杠?
72 c#  string  winforms 

11
从UI线程强制进行GUI更新
在WinForms中,如何从UI线程强制立即进行UI更新? 我正在做的大致是: label.Text = "Please Wait..." try { SomewhatLongRunningOperation(); } catch(Exception e) { label.Text = "Error: " + e.Message; return; } label.Text = "Success!"; 在操作之前,标签文本未设置为“ Please Wait ...”。 我使用另一个线程解决了这个问题,但是它变得繁琐,我想简化代码。


21
两个输出文件名解析为相同的输出
最近,我创造了新的Form叫WorkersScreen。当我尝试运行项目时,出现此错误: 错误1两个输出文件名解析为相同的输出路径:“ obj \ x86 \ Debug \ DryWash.WorkersScreen.resources” 它是什么意思,如何解决?
71 c#  .net  winforms 

9
C#获取控件在窗体上的位置
当控件可能位于其他控件(如“面板”)内部时,是否有任何方法可以检索表单中的控件位置? 控件的Left和Top属性只给我它在父控件中的位置,但是如果我的控件在五个嵌套面板中,并且我需要它在窗体上的位置怎么办? 快速示例: 按钮btnA位于面板pnlB内部的坐标(10,10)上。 面板pnlB位于表格frmC内的坐标(15,15)上。 我想要btnA在frmC上的位置是(25,25)。 我可以得到这个位置吗?
71 c#  winforms  controls 

4
命名空间system.windows中不存在“表单”
我刚刚开始从事C#工作,并且不喜欢从某个论坛获得的一些代码示例。 这段代码使用的是using system.windows.forms我收到错误的命名空间: 表单在名称空间system.windows中不存在。 我也是收到有关未定义功能的一些错误senddown与sendup我认为是在Forms名字空间。 我正在使用Visual Studio 10(带有.net frame work 4.0)。任何想法如何解决此错误?
71 c#  winforms 

17
C#GUI命名约定的最佳做法?[关闭]
已关闭。这个问题是基于观点的。它当前不接受答案。 想改善这个问题吗?更新问题,以便通过编辑此帖子以事实和引文回答。 5年前关闭。 改善这个问题 无论用WinForms还是XAML编写的GUI,在我看到的项目之间似乎具有最广泛的命名约定。为了简单TextBox起见,我看到了各种命名约定: TextBox tbName // Hungarian notation TextBox txtName // Alternative Hungarian TextBox NameTextBox // Not even camelCase TextBox nameTextBox // Field after field with TextBox on the end TextBox TextBoxName // Suggested in an answer... TextBox textBoxName // Suggested in an answer... TextBox uxName // Suggested …

8
使TextBox不可编辑
我想使TextBox表单上的某些es无法编辑,但是我想使它text清晰(黑色而不是灰色),这就是为什么我不想使用 myTextBox.Enabled = false; 我想以某种方式禁用它,但使用非灰色的前景色。 有人有任何线索吗?
70 c#  .net  winforms  textbox 

4
如何将新的用户控件添加到工具箱或新的Winform中?
我有一个现有的库(不是Winforms应用程序),可以向真正的Windows应用程序提供一些Winforms。在此库中,我想创建一个用户控件以将某些控件组合在一起。为此,我右键单击“添加”,“用户控件”,然后将一些控件拖到新的“用户控件”上。 到现在为止还挺好。用户控件甚至具有必需的用户控件图标。但是,将新的用户控件从解决方案资源管理器中拖动到新的空白Winform上是行不通的(我在其中画出一条带圆圈的圆),并且将其拖动到工具箱上也行不通(即使我获得了+号)当我将其拖到工具箱上时)。 是否有某种XML魔术或其他我无法实现的功能? 注意:我在Visual Studio 2008中遇到了一些问题,可以通过遵循在此处找到的解决方法来设法解决。现在,只需重建项目,我就可以将添加到现有项目中的用户控件添加到工具箱中。


10
是否可以像WebView一样将Gecko或Webkit嵌入Windows窗体中?
我很想知道是否有Gecko.NET之类的东西;)我的意思是,就像我们可以嵌入WebView一样,这就是IE7在所有Windows Forms应用程序中的“实例”(并告诉它 navigateto(fancy_url);)。我很想使用Firefox或WebKit。 有人尝试过吗? 更新:请记住,尽管可以使用上述控件嵌入壁虎,但仍然无法打印在使用Gecko时。 2010年3月更新:仍然无法使用GeckoFX进行本机打印,但是根据您要尝试执行的操作,存在两种方法可能就足够了。请参阅:http : //geckofx.org/viewtopic.php?id=796更多信息,。 2013年10月更新:我不再从事Windows开发,因此对此我没有兴趣,但是似乎可以在以下位置找到Gecko的开发:https : //bitbucket.org/geckofx,并且它似乎是最近更新的。留给以后的Windows开发人员使用;) 2017年1月更新:我收到了一家名为TeamDev。他们创建了一个基于Chromium的.NET浏览器组件,称为“ DotNetBrowser”,该组件可用于在Windows Forms应用程序中显示现代网页。 直接引用电子邮件: 以下是有关组件的一些详细信息,可能会有所帮助: DotNetBrowser基于Chromium,因此支持HTML5,CSS3,JS和最新的Web标准。库的基础Chromium版本会定期更新。 该组件适用于WPF和Windows Forms桌面应用程序,并且适用于C#和VB.NET。 该图书馆已获得商业许可,但是为开源和学术项目提供了免费许可。 免责声明: 我没有使用过此DotNetBrowser,因为我不再进行Windows开发,但是如果您正在寻找解决方案,可能值得检查。
69 c#  .net  winforms  webkit  gecko 


8
如何正确停止BackgroundWorker
我有一个带有2个组合框的表单。我想combobox2.DataSource根据combobox1.Text和进行填写combobox2.Text(我假设用户已完成输入,combobox1并且处于输入的中间combobox2)。所以我有一个这样的事件处理程序combobox2: private void combobox2_TextChanged(object sender, EventArgs e) { if (cmbDataSourceExtractor.IsBusy) cmbDataSourceExtractor.CancelAsync(); var filledComboboxValues = new FilledComboboxValues{ V1 = combobox1.Text, V2 = combobox2.Text}; cmbDataSourceExtractor.RunWorkerAsync(filledComboboxValues ); } 至于构建DataSource是耗时的过程(它创建对数据库的请求并执行它),我认为最好使用BackgroundWorker在另一个过程中执行它。因此,有一种情况是cmbDataSourceExtractor尚未完成其工作,而用户又键入了一个符号。在这种情况下,我在此行上看​​到一个异常,原因 cmbDataSourceExtractor.RunWorkerAsync(filledComboboxValues );是BackgroundWorker很忙,无法同时执行多个操作。 如何摆脱这种例外? 提前致谢!


2
打开文件对话框,一个用于多个Excel扩展名的过滤器?
我想使用OpenFileDialog对象浏览到Excel文件。我想将过滤器设置为打开具有不同类型的excel扩展名的文件,例如:.xls,.xlsm,.xlsx等。 我正在使用的是这样的: OpenFileDialog of = new OpenFileDialog(); of.Filter = "Excel Files(.xls)|*.xls| Excel Files(.xlsx)|*.xlsx| Excel Files(*.xlsm)|*.xlsm"; 这可行,但是用户必须从OpenFileDialog的下拉列表中选择正确的excel文件类型。 有谁知道是否有一种方法可以对所有类型的Excel扩展应用一个过滤器? 类似于:“ ... Excel文件(.xls,.xlsx,.xlxm)| * .xls,*。xlsx,*。xlsm;” 预先感谢您的任何答复。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.