C#检查组合框显示成员中的字符串数据

时间:2016-05-30 07:47:12

标签: c# combobox valuemember

这是:

Datatable dt;
......
.......
cmbName.DataSource=dt;
cmbName.ValueMember="ID";
cmbName.DisplayMember="Name";


private void cmbName_Validating(object sender, CancelEventArgs e)
{          
    if (cmbName.Text == string.Empty)
    {
        MessageBox.Show("select correct  name");
        e.Cancel = true;
    }
    else if (cmbName.Items.Contains(cmbName.Text))
    {
        e.Cancel = false;
    }
    else
    {
        MessageBox.Show("select correct name");
        e.Cancel = true;
    }
}

始终显示'选择正确的名称'。即使它是从下拉列表中选择的。请有人建议我!

2 个答案:

答案 0 :(得分:0)

我是通过这段代码完成的,这可能有助于某人:

if (Convert.ToInt32(cmbName.SelectedValue) >= 1)
        {
            e.Cancel = false;

        }
        else
        {
            MessageBox.Show("select correct name");
            e.Cancel = true;
        }

答案 1 :(得分:-1)

根据你的陈述

如果您的cmbname.Text为空,则会显示消息:

  

选择正确的名称

当您的cmbname.Text不为空时,再次显示消息:

  

选择正确的名称

当你从DropDownList中选择时,你必须在else条件中指定你想要的输出信息。