I'm doing a project where "ToString" is being used as a method.
private void 开发者_StackOverflow中文版button1_Click(object sender, EventArgs e)
{
if(cboPlaneType.SelectedItem = "Generic")
{
}
else if (cboPlaneType.SelectedIndex = "Passenger")
{
}
else if (cboPlaneType.SelectedIndex = "Fighter Jet")
{
}
}
And in this case i'm not sure what to do. As you can see I've tried a few different option but with no avail. I've also tried
if((string)cboPlaneType.SelectedItem = "Generic")
And that didn't work.
**Edit
Just to point out, SelectedValue wasn't the correct answer.
ended up being "if((string)combobox.SelectedItem == "Generic")
The equality operator in c# is ==; = is an assignment operator.
SelectedIndex will return an int representing the zero-based position of the item that is selected. (I'm guessing it returns -1 when no item is selected.)
SelectedItem can be an object of any type; if it is not a string then you can't match it by comparing with a string.
Are you saying that the objects with which the ComboBox is populated override ToString()? You should still be able to use the result of that method for comparison, because it can only return a string. Otherwise, you might be able to use SelectedValue, but this depends on what kind of ComboBox you are using and how you have set it up.
SelectedIndex is an property of type Int32.
Maybe you want to use SelectedValue instead ?
加载中,请稍侯......
精彩评论