C#在textbox中退格键消除回车时如何让textbox的长度减一而不是减两个字符 5

 我来答
youbl
2011-12-12 · TA获得超过2510个赞
知道大有可为答主
回答量:1844
采纳率:62%
帮助的人:1671万
展开全部
Textbox里的回车就是2个字符,是\r\n,就是回车和换行2个字符,除非你删除时手动加一个非打印字符,这种需求没必要
追问
发送微博时不是有一个同步提示你还可输入多少字的吗,他们那里输入回车算是一个字符,消除一个回车也算是一个字符,我现在做的是输入时算一个字符,但我消除时就算是两个字符了
追答
我测试了一下,新浪微博的连续2次回车才算一个字符,他那个算长度的是自己重新做的,不是简单的取Length,明白吗
qjn85127
2011-12-12 · 超过24用户采纳过TA的回答
知道答主
回答量:60
采纳率:0%
帮助的人:73.9万
展开全部
重写Textbox的keydown事件...
更多追问追答
追问
能具体下吗
追答
TextBox 下面有一个 OnKeyDown 可以重写

protected override void OnKeyDown(KeyEventArgs e)
{

if (this.SelectedText.Length == 0) //如果多字符被选中,那么按照系统设定处理。
{
int index = this.SelectionStart;
string tmpText = this.Text;
//判断 index - 1 和 index-2 是不是 \r\n ; 如果是,移除\r\n并且多移除一个字符
//比如 :Test\r\n指针1234, 这时候正好鼠标在"指针"前,移除 "t\r\n";
//结果就是 Tes指针1234
return;
}
base.OnKeyDown(e);
}
具体的你就自己写,注意各种情况。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
刁煊胥歆然
2020-03-16 · TA获得超过3649个赞
知道大有可为答主
回答量:3176
采纳率:29%
帮助的人:179万
展开全部
Textbox车2字符\r\n车换行2字符除非删除手加非打印字符种需求没必要
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
ynkmit
2011-12-12 · 超过10用户采纳过TA的回答
知道答主
回答量:43
采纳率:0%
帮助的人:28.7万
展开全部
你的需求很另类啊
更多追问追答
追问
发送微博时不是有一个同步提示你还可输入多少字的吗,他们那里输入回车算是一个字符,消除一个回车也算是一个字符,我现在做的是输入时算一个字符,但我消除时就算是两个字符了
追答
这个地方应该是英文字符和中文字符的区别吧,你应该对这两种字符进行一下计算。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式