从Combobox选择中显示文本C#

时间:2015-07-06 15:16:56

标签: c# winforms combobox

我正在尝试使用C#在VS 2013中创建一个简单的Windows窗体应用程序。表单有2个组合框,有一些字符串可供选择。我试图根据这些选择在2个文本框中显示结果,但是当我运行程序时,结果不会显示。我将代码放在方法中,用于从组合框中选择值。这就是我所拥有的:

private void SiteList_SelectedValueChanged(object sender, EventArgs e)
{
    string SiteSelect = SiteList.SelectedValue.ToString();
    string DateSelect = dateList.SelectedValue.ToString();


   if (SiteSelect == "Alaska"  &&  DateSelect = "January 2014")
   {
       actualResults.Text = "$391,015.92";
       estimateResults.Text = "No Estimate Available";
   } 
}

3 个答案:

答案 0 :(得分:0)

试试这个:

string SiteSelect = SiteList.SelectedItem.ToString();
string DateSelect = dateList.SelectedItem.ToString();

SelectedItem是在comboBox中选择对象的方法。值将仅选择显示字符串(我不知道为什么但它不能一直工作)。我总是将SelectedItem与toString()一起使用以将对象作为字符串

答案 1 :(得分:0)

使用此SelectedItem代替SelectedValue

像这样

string Site = SiteList.SelectedItem.ToString();
string Date = dateList.SelectedItem.ToString();

答案 2 :(得分:0)

您已订阅SelectedValueChanged活动 仅当通过设置DataSource属性

添加项目时才会触发此事件
Me.ComboBox.DataSource = yourListOfItems;

如果手动添加项目(我假设)

Me.ComboBox.Items.Add(yourNextItem);

然后您需要订阅SelectionChangesCommitted事件 并且正如其他答案所述,使用SelectedItem获取选定值

因为SelectedValue,在手动添加项目的情况下,将返回null

请检查:ComboBox SelectedItem vs SelectedValue