10

我希望我的应用程序获取 ComboBox 的值,然后设置用户选择的值或以某种方式获取先前选择的值。

问题是在我的表单中,有四个列表和一个 ComboBox(其中包含列表中的所有值),我想将 ComboBox 的值重新填充回它从中获取的列表,然后删除新选择的项目来自其他/相同的列表。

4

1 回答 1

20

你想处理ComboBox.Enter事件。然后将SelectedItemor保存SelectedValue到成员变量中。然后,您可以随时将该值重新分配给 ComboBox。

报名参加活动。您可以通过以下两种方式之一执行此操作:

通过设计师来做。选择您的组合框。在“属性窗口”中,单击闪电图标以显示其所有事件。然后找到“回车”,在框中双击。它会自动为您生成回调函数(“事件处理程序”),并将其连接到事件。

在此处输入图像描述

在此处输入图像描述

您可以以编程方式做同样的事情。在构造函数中,连接正确签名的事件处理程序:

public partial class Form1 : Form 
{
    public Form1()
    {
        InitializeComponent();
        comboBox1.Enter += comboBox1_Enter;
    }

    private void comboBox1_Enter(object sender, EventArgs e)
    {
        m_cb1PrevVal = comboBox1.SelectedValue;
    }

    private void RestoreOldValue()
    {
        comboBox1.SelectedValue = m_cb1PrevVal;
    }
}
于 2012-07-16T00:36:25.563 回答