string.Substring 命令无效

string.Substring command not working

我有一个包含打印机列表的下拉列表,我想从 drowdownlist.SelectedItem.Text 中获取前三位数字,这背后的原因是我需要计算一个项目的旋转代码。

这是代码:

string[] plantname = Printerlist.SelectedItem.Text.Split('-');
string plantvalue = plantname[0].ToString();
if (plantvalue.Substring(0,3).ToLower() == "abk"){
   rotation_plant = "9";
 }
 else if (plantvalue.Substring(0, 3).ToLower() == "cor")
 {
    rotation_plant = "3";
 }
 else if (plantvalue.Substring(0, 3).ToLower() == "iok")
 {
    rotation_plant = "0";
 }
 else if (plantvalue.Substring(0, 3).ToLower() == "moc")
 {
    rotation_plant = "6";
 }
 else if (plantvalue.Substring(0, 3).ToLower() == "tes")
 {
    rotation_plant = "1";
 }

在调试中我看到了 plantvalue :

但上面的子字符串必须等于“tes”但是:

我做了重建,我关闭了应用程序并重新打开它,但它仍然无法正常工作,有没有人遇到过类似的问题,如果是的话,你是怎么过来的,请帮忙....

好吧,Substring 方法,在您的情况下,returns 一个新字符串,它将包含从索引 0 到 2 的图表。

在调试器中,您仍然检查 plantvalue 变量,而不是 Substring 方法的结果。 尝试将子字符串放入一个新变量中,即:

string lowerThreeLetters = plantvalue.Substring(0, 3).ToLower();

这样,通过将鼠标悬停在 lowerThreeLetters 变量上,您将能够在调试中看到 3 个首字母,而且,只会对子字符串进行一次计算,而不是每个 if 语句。