我如何使用 c# 的按键事件将每个单词的首字母大写?

How can i capitalize first letter of every word using keypress event with c#?

我必须将每个单词的首字母大写,但使用 C# 进行按键事件。现在文本框中的每个字母都被大写了,我添加了我使用的代码。我不知道如何只将第一个字母大写,或者我做错了什么。你能帮帮我吗?

private void txt_name_KeyPress(object sender, KeyPressEventArgs e)
{
    e.KeyChar = (e.KeyChar.ToString()).ToUpper().ToCharArray()[0];
}

如果必须走这条路,则需要跟踪之前的按键操作:

private char PreviousChar;

private void txt_name_KeyPress(object sender, KeyPressEventArgs e)
{
    if (Char.IsWhiteSpace(PreviousChar) || PreviousChar == '[=10=]')
    {
        e.KeyChar = Char.ToUpper(e.KeyChar);
    }
    PreviousChar = e.KeyChar;
}