有人可以解释为什么第一个代码块不起作用而第二个代码块不起作用。在第一个示例中,当控件失去焦点时,字符串不会被capizalized。
不工作(不大写):
private void nameTextEdit_Leave(object sender, EventArgs e)
{
if(Properties.Settings.Default.capitalizeCustomer != false)
{
string userEnteredString = nameTextEdit.EditValue.ToString();
string capitalizedString = userEnteredString.ToUpper();
nameTextEdit.EditValue = capitalizedString;
}
}
工作正常(当控件丢失焦点文本大写时):
private void nameTextEdit_Leave(object sender, EventArgs e)
{
if(Properties.Settings.Default.capitalizeCustomer != false)
{
string userEnteredString = nameTextEdit.EditValue.ToString();
nameTextEdit.EditValue = userEnteredString.ToUpper();
}
}
答案 0 :(得分:0)
这很奇怪,两个例子应该具有相同的效果。
我最好的猜测是你不小心做了
nameTextEdit.EditValue = userEnteredString;
而不是:
nameTextEdit.EditValue = capitalizedString;
答案 1 :(得分:0)
为什么不简单地将CharacterCasing
属性设置为Upper
并从一开始就防止小写?