找回密码
 立即注册

QQ登录

只需一步,快速开始

miyaminn

论坛元老

48

主题

121

帖子

2万

积分

论坛元老

积分
22182

活字格认证

miyaminn
论坛元老   /  发表于:2015-3-12 11:25  /   查看:13983  /  回复:11
想要的结果:
1.控件输入“-”号时,控件内不显示负号,但是接着输入123,会显示“-123”
当删除是,删除最后一位1时,负号也同时清空掉,
2.输入-123,然后按“-”号时,控件内容正负是可以切换的。

以上内容不知道怎么对应,有什么属性设置吗?
原来的老版本可以的,最新版本的控件怎么做呢?
因项目以上市,所以很急,谢谢!!!

11 个回复

倒序浏览
Leo
超级版主   /  发表于:2015-3-12 13:57:00
沙发
您使用的是InputMan的哪一个版本?
回复 使用道具 举报
miyaminn
论坛元老   /  发表于:2015-3-12 14:48:00
板凳
回复 2楼Leo的帖子

版本号是: 7.2.0.0
回复 使用道具 举报
Leo
超级版主   /  发表于:2015-3-12 15:28:00
地板
回复 3楼miyaminn的帖子

WinForm 的7.2版本,我看到结果是正确的。
请检查是否你使用到的GcNumber写了什么特殊逻辑?

方便提供一个能重现你所提到现象的Demo吗?
回复 使用道具 举报
miyaminn
论坛元老   /  发表于:2015-3-12 15:56:00
5#
回复 4楼Leo的帖子

请问你的属性是怎么设置的?
这个版本不太熟悉,可以告诉我要怎么设置属性吗?
谢谢!!
回复 使用道具 举报
Leo
超级版主   /  发表于:2015-3-12 16:08:00
6#
回复 5楼miyaminn的帖子

我向Form添加了一个GcNumber,然后设置格式为类似"#########"的形式(因为你提到默认可以为空文本)
然后输入“-”号,发现文本变为红色,并且“-”字符已经出现在控件上。
回复 使用道具 举报
miyaminn
论坛元老   /  发表于:2015-3-12 16:27:00
7#
回复 6楼Leo的帖子

这种现象是错的啊,你输入符号,符号显示,而且删除不掉。
想要的结果是输入符号后,文本不显示符号,然后你接着输入数字,才显示符号
如按“-123”,输入符号的时候,不显示符号,当数字1输入后,才会出现"-1"
回复 使用道具 举报
miyaminn
论坛元老   /  发表于:2015-3-12 16:37:00
8#
比如文本框内有文字“-1”,这个时候按Backspace,只把1删掉了,负号还在,
想要按一下Backspace,负号和1全部删掉
回复 使用道具 举报
Leo
超级版主   /  发表于:2015-3-12 17:00:00
9#
回复 8楼miyaminn的帖子

明白你想干啥了。
但是这个行为追朔到v4.0版本就已经是这个样子了啊。

我看看有没有绕过去的办法。
回复 使用道具 举报
Leo
超级版主   /  发表于:2015-3-12 17:28:00
10#
回复 8楼miyaminn的帖子

你拿这段代码试试看
  1.     public partial class Form6 : Form
  2.     {
  3.         private const string Number_Negative_Prefix = "-";
  4.         public Form6()
  5.         {
  6.             InitializeComponent();
  7.             // Initialze the format pattern to "########.##"
  8.             // 我假设你那里用到的输入格式是这个样子的,请根据具体项目微调。
  9.             this.gcNumber1.Fields.SetFields("########.##", "", "", Number_Negative_Prefix, "");
  10.             this.gcNumber1.TextChanging += gcNumber1_TextChanging;
  11.         }
  12.         void gcNumber1_TextChanging(object sender, GrapeCity.Win.Editors.TextChangingEventArgs e)
  13.         {
  14.             var result = e.Result;
  15.             if (string.CompareOrdinal(result, Number_Negative_Prefix) == 0)
  16.             {
  17.                 this.gcNumber1.Fields.SignPrefix.NegativePattern = string.Empty;
  18.                 this.gcNumber1.Text = string.Empty;
  19.             }
  20.             else
  21.             {
  22.                 this.gcNumber1.Fields.SignPrefix.NegativePattern = Number_Negative_Prefix;
  23.             }
  24.         }
  25.     }
复制代码

评分

参与人数 1满意度 +5 收起 理由
miyaminn + 5 谢谢你的回答!

查看全部评分

回复 使用道具 举报
12下一页
您需要登录后才可以回帖 登录 | 立即注册
返回顶部