jjzjj

ComboBox

全部标签

C# 循环窗口窗体元素

我有一个包含几个组合框的窗体。我需要完成的是让每个包含项目的组合框将其选择的索引设置为0。不是手动按名称执行每个组合框,是否有一个函数可以按类型返回所有​​子项。或者获取所有子元素并将它们的类型与组合框元素的类型进行比较?@noah,您的原始代码起初不起作用,但我所需要的只是提醒child被称为控件(谢谢)。有了这个我做了一个递归函数来设置所有组合框而不仅仅是主窗体的直接后代:privatevoidrecursiveSetComboBox(Controlelement){foreach(Controlainelement.Controls){if(a.Controls.Count!=0

c# - Usercontrol 包含一个组合框,但在设计时设置的 Items 不在运行时

我有一个包含文本框和组合框的用户控件。我已将组合框的Item属性暴露给用户控件的客户端,因此:publicSystem.Windows.Forms.ComboBox.ObjectCollectionItem{get{returnbaseComboBox.Items;}}我将用户控件添加到Windows窗体,并使用窗体设计器中的属性值编辑器设置项目列表。然后我运行应用程序,组合框的下拉列表是空的。为了确认设计时添加的项目不在列表中,我在客户端表单中添加了以下两行代码:textBox1.Text=userControl1.Items.Count.ToString();userControl

c++ - 如何处理 win32 winapi 中无效绘制的 ComboBox 控件?

我遇到了使用WinAPI无效绘制ComboBox的问题。当您最小化应用程序并在未隐藏ComboBox控件的选择后恢复它时,它看起来像这样:如您所见,OK按钮获得了焦点,但ComboBox的选择仍未隐藏。当控件失去输入焦点时,ComboBox的正常行为会隐藏选择。代码:#defineWIN32_MEAN_AND_LEAN#include#include#include#include#includestructwindow_context{HINSTANCE_instance;HWND_window;HWND_combo_box2;HWND_ok_button;window_contex

c# - 如何在运行时根据屏幕分辨率自动调整窗体窗口大小(设计期间创建的窗口大小太大)

我创建了一个窗体大小足以查看的Windows应用程序。我希望根据显示器的屏幕分辨率缩小或最大化表单,以便用户可以以紧凑的方式查看所有控件。我在表单中尝试了自动调整大小属性,但它不起作用。表单中是否有任何属性可以解决此问题?或者我是否需要编写其他代码来解决此问题?谢谢 最佳答案 设置WindowState=Maximized将导致窗口打开到屏幕分辨率的全范围。不管那个值是什么,它都会匹配它。编辑:从您的意见来看,您似乎希望AutoSize属性能够完成。我更新了表单以添加一些控件并设置了AutoSize=True和AutoSizeMod

c# - 在 C# Windows 窗体中绑定(bind)组合框

我有2个组合框,它们都使用相同的数据源。每当我更改其中一个组合框时,其他组合框都会更改为完全相同的值。看来要解决这个问题我需要使用数据绑定(bind)。我尝试了很多东西,但似乎没有任何效果。我的组合框被命名为comboBox1和comboBox2。下面是我试图用来使combobox2独立于comboBox1的源代码。任何帮助将不胜感激。BindingSourcebs=newBindingSource(this.claimTypeBindingSource,null);BindingContextbc=newBindingContext();comboBox2.BindingContex

c# - 当鼠标悬停在控件上时获取控件名称 C#

我在运行时动态添加组合框,如下所示。我遇到的问题是我不知道用户使用的是哪个组合框。例如。用户决定向表单添加5个组合框,然后转到第一个组合框,并选择一个值,我需要检索那个组合框的值。下面的代码在做什么——我的方法我正在向FlowlayoutPanel添加一个组合框,并根据鼠标坐标检索其名称....顺便说一句,这不起作用...我不知道该怎么做。非常感谢任何帮助。publicpartialclassForm1:Form{intcount=0;publicForm1(){InitializeComponent();}privatevoidbutton1_Click(objectsender,E

windows - 在 VB.net 中保存设置的最简单方法是什么

我正在创建一个启动游戏服务器的程序。我有组合框,用户可以在其中输入游戏的ip、map等。我怎样才能保存他们输入的内容,以便下次他们已经在那里,而不必重新输入。 最佳答案 使用VisualStudio的设置设计器,右键单击您的项目,然后单击属性,导航到设置部分,您可以从那里添加任何您想要的内容。然后你可以像这样从代码访问你的设置My.Settings.nameOfSettingsEntry=valueMy.Settings.Save()您会找到更多详细信息和屏幕截图here, 关于wind

c# - 重写 ComboBox 的 Add 方法

有没有办法覆盖Combobx的Add()方法?我问这个的原因是我想将类对象添加到我的组合框中,但为了显示我希望它显示我的对象的名称。例如:combbox.Items.Add(myClassObject)但我们在combbobx中实际看到的用户将显示为myClassObject.Name 最佳答案 如果我正确理解了您的请求,您可以使用绑定(bind)来做到这一点:伪代码:comboBox.DataSource=collectionOfData;comboBox.DisplayMember="Name";数据将添加到组合,但可视化将是“

C# 数据 GridView : get selected item in combobox columns

我正在开发一个允许用户操作xml文件的GUI。我通过xml元素在按列整齐组织的datagridview中显示xml文件。我允许用户添加列作为我项目的扩展。该列被添加到数据集表中,然后更新到我用来显示xml文件的datagridveiew。我已经包含了用户添加组合框列来选择选项的功能,而不是像这样不断地输入它们。对或错。然而,这就是问题所在。保存普通列很容易。组合框列很麻烦。我有一个“保存组合框列”可以将其更新为xml,还有一个“保存”按钮可以保存在用户选择的目标位置。我做了一些研究,似乎组合框类具有这样的功能,可以访问用户输入的组合框中的选定项。我们在哪里:ComboBoxbox=ne

c# - 为什么 "root\\StandardCimv2"在 Windows 7 中不起作用?

workWhen我尝试在组合框中显示带有适配器名称的列表,如下所示:ManagementObjectSearchersearcher=newManagementObjectSearcher("root\\StandardCimv2","SELECT*FROMMSFT_NetAdapter");foreach(ManagementObjectqueryObjinsearcher.Get()){try{comboBox1.Items.Add(queryObj["Name"].ToString());}catch(Exception){comboBox1.Items.Add("");}}很好