論壇上偶而會看見的寫法
comboBox1.GetType().ToString() == "System.Windows.Forms.ComboBox"
該寫法程式會正確判斷也不會有任何異常,但根本是挑戰自我專注力,只要打錯任何一個字,就變成 false,會建議改成下列寫法
namespace WindowsFormsApplication1
{
public partial class Form1 : Form
{
private void Form1_Load(object sender, EventArgs e)
{
StringBuilder sb = new StringBuilder();
// 利用 Type 判斷
if (comboBox1.GetType() == typeof(ComboBox))
sb.AppendLine("Type 判斷:Yes");
else
sb.AppendLine("Type 判斷:NO");
// 利用 ToString() 字串判斷
if (comboBox1.GetType().ToString() == "System.Windows.Forms.ComboBox")
sb.AppendLine("ToString() 字串判斷:Yes");
else
sb.AppendLine("ToString() 字串判斷:NO");
// 利用 ToString() 字串判斷,故意大小寫錯一個
if (comboBox1.GetType().ToString() == "System.Windows.Forms.Combobox")
sb.AppendLine("ToString() 字串判斷,故意大小寫錯一個字:Yes");
else
sb.AppendLine("ToString() 字串判斷,故意大小寫錯一個字:NO");
MessageBox.Show(sb.ToString(), "控件判斷", MessageBoxButtons.OK, MessageBoxIcon.Information);
}
}
}
沒有留言:
張貼留言