如何对文本框进行适当的资本化验证

时间:2016-03-24 06:05:09

标签: c# winforms

我插入文本作为成员的名字现在我已经为第一个字母的大小写做了一些代码...但问题是,当我尝试在另外两个单词之间插入新单词时,光标移到最后一个字母的末尾每当我按下键时都会说出来......

我在处理以下代码......

CultureInfo cultureInfo = System.Threading.Thread.CurrentThread.CurrentCulture;
TextInfo textInfo = cultureInfo.TextInfo;
tbOwnerName.Text = textInfo.ToTitleCase(tbOwnerName.Text.ToLower());
tbOwnerName.Select(tbOwnerName.Text.Length, 0);

我知道最后一行代码有问题,但我无法弄明白......所以帮帮我

1 个答案:

答案 0 :(得分:0)

在替换tbOwnerName.Text之前,将当前游标位置tbOwnerName.SelectionStart存储在变量中。然后用tbOwnerName.Select(lastPosition,0)替换你的最后一行。这里发生的是替换Text将光标移动到第一个位置,旧的Select可以处理正常的输入(从头到尾),但它无法处理中间的输入。