这段代码很多if/else,我想知道它是否可以简化为少数几行.代码工作得很好,但我更喜欢更有效和更清洁的方式.
if (textBox_naam.Text.Length < 3)
{
textBox_naam.BackColor = Color.FromArgb(205, 92, 92);
}
else
{
textBox_naam.BackColor = Color.White;
}
if (textBox_email.Text.Length < 5)
{
textBox_email.BackColor = Color.FromArgb(205, 92, 92);
}
else
{
textBox_email.BackColor = Color.White;
}
if (textBox_body.Text.Length < 20)
{
textBox_body.BackColor = Color.FromArgb(205, 92, 92);
}
else
{
textBox_body.BackColor = Color.White;
}
Run Code Online (Sandbox Code Playgroud)
Dar*_*mas 18
你最简单的赌注(不涉及任何技巧!)将是:
SetBackColor(textBox_naam, 3, GOOD_COLOR, BAD_COLOR);
SetBackColor(textBox_email, 5, GOOD_COLOR, BAD_COLOR);
SetBackColor(textBox_body, 20, GOOD_COLOR, BAD_COLOR);
Run Code Online (Sandbox Code Playgroud)
使用如下SetBackColor定义的方法:
public void SetBackColor(TextBox tb, int minLength, Color goodColor, Color badColor)
{
tb.BackColor = tb.Text.Length < minLength ? badColor : goodColor;
}
Run Code Online (Sandbox Code Playgroud)