切换不输入大小写,而是输入值匹配
本文关键字:输入 大小写 | 更新日期: 2023-09-27 17:54:54
我对下面的代码有一个问题。我有一个switch语句,它没有进入任何情况。假设propType
的值是"ID",开关应该将其匹配到大小写"ID",但它没有这样做。我做错了什么?
case "button":
Button ctrlButton = new Button();
for (int j = 0; j < ctrlProperties.Length; j++)
{
string currentProperty = ctrlProperties[j];
int propDelimiterPos = currentProperty.IndexOf(propDelimiter);
string propType = currentProperty.Substring(0, propDelimiterPos);
string propValue = currentProperty.Substring(propDelimiterPos + 2);
switch (propType.ToLower())
{
#region PROPERTY PARAMETERS LEVEL
case "text":
ctrlButton.Text = propValue;
break;
case "font":
int fontDelimiterPos = propValue.IndexOf(pntDelimiter);
string fontName = propValue.Substring(0, fontDelimiterPos);
string fntSize = propValue.Substring(fontDelimiterPos + 1);
int fontSize = int.Parse(fntSize);
ctrlButton.Font = new Font(fontName, fontSize);
break;
case "bounds":
string[] boundsValues = propValue.Split(pntDelimiter);
Rectangle bounds = new Rectangle(
new Point(Convert.ToInt32(boundsValues[0]), Convert.ToInt32(boundsValues[1])),
new Size(Convert.ToInt32(boundsValues[2]), Convert.ToInt32(boundsValues[3])));
ctrlButton.Bounds = bounds;
break;
case "id":
ctrlButton.Name = propValue;
break;
#endregion
}
this.Controls.Add(ctrlButton);
ctrlButton.Show();
}
break;
这可能是由于您的字符串中有额外的空间,请尝试此propType.Trim().ToLower()