WPF文本框内容长度验证问题

一个破人 2017-08-31 11:45:10
有个需求:

文本框输入内容大于50时,给出提示;

提示在3秒后消失;如果继续输入再次显示提示,并且输入的内容无效;

现在我实现了这个功能,但是有个问题: 在VS中运行的时候正常,在安装好程序后,用英文输入就会超出最大长度,中文没问题;
...全文
1196 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
晚安苏州 2017-09-12
  • 打赏
  • 举报
回复
贴出主要代码看看
一个破人 2017-09-12
  • 打赏
  • 举报
回复
自己在这个PreviewTextInput事件中加了判断,然后设置了最大长度; 解决了,感谢各位
qq14923349 2017-09-02
  • 打赏
  • 举报
回复
如果在getset那处理不了 就在外头判断长度
Nick_Ngai 2017-09-01
  • 打赏
  • 举报
回复
Nick_Ngai 2017-09-01
  • 打赏
  • 举报
回复
把Value转为字符,根据字符长度判断呢?
一个破人 2017-09-01
  • 打赏
  • 举报
回复
引用 3 楼 duanzi_peng 的回复:
[quote=引用 2 楼 gflhy521 的回复:] [quote=引用 1 楼 duanzi_peng 的回复:] 文本框输入内容大于50时 -》取的是Length吧,应该没有问题的。
我在Set里边判断了value大于50就弹出提示并且return;这个在vs中运行是正常验证并弹出提示了, 但是在打包安装后,这个就不正常了 在中文输入的时候有效,英文输入的时候就无效了,虽然也弹出提示,但是可以一直输入英文;[/quote] 这个跟安装打包没关系,应该还是你逻辑判断的问题。 set: set{ if(_xxx!=value) { // 判断value的length if(小于50) { _xxx=value; } } 或者放到textChanged 事件里去处理。[/quote] Set方法的判断没问题,VS用debug和Release模式运行都没问题; 就是打包安装以后英文就能输入超过长度了;
exception92 2017-08-31
  • 打赏
  • 举报
回复
引用 2 楼 gflhy521 的回复:
[quote=引用 1 楼 duanzi_peng 的回复:] 文本框输入内容大于50时 -》取的是Length吧,应该没有问题的。
我在Set里边判断了value大于50就弹出提示并且return;这个在vs中运行是正常验证并弹出提示了, 但是在打包安装后,这个就不正常了 在中文输入的时候有效,英文输入的时候就无效了,虽然也弹出提示,但是可以一直输入英文;[/quote] 这个跟安装打包没关系,应该还是你逻辑判断的问题。 set: set{ if(_xxx!=value) { // 判断value的length if(小于50) { _xxx=value; } } 或者放到textChanged 事件里去处理。
一个破人 2017-08-31
  • 打赏
  • 举报
回复
引用 1 楼 duanzi_peng 的回复:
文本框输入内容大于50时 -》取的是Length吧,应该没有问题的。
我在Set里边判断了value大于50就弹出提示并且return;这个在vs中运行是正常验证并弹出提示了, 但是在打包安装后,这个就不正常了 在中文输入的时候有效,英文输入的时候就无效了,虽然也弹出提示,但是可以一直输入英文;
exception92 2017-08-31
  • 打赏
  • 举报
回复
文本框输入内容大于50时 -》取的是Length吧,应该没有问题的。

8,734

社区成员

发帖
与我相关
我的任务
社区描述
WPF/Silverlight相关讨论
社区管理员
  • WPF/Silverlight社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧