credream 发表于 2015-11-5 15:16:00

InputManNETwin4中的Combo控件,只要按下面设置下,即使删除空格后,依然会有这个空格

InputManNETwin4中的Combo控件,只要按下面设置下,即使删除空格后,依然会有这个空格
Me.Combo2.Format = New GrapeCity.Win.Input.MaskFormat("\D", "", "")
Me.cmbTermDiv.PromptChar = Global.Microsoft.VisualBasic.ChrW(32)

而且这时候.TEXT属性会依然有个空格

在InputManWin8中,怎么设置才能实现和InputManNETwin4中一样的效果

Leo 发表于 2015-11-5 16:43:00

回复 1楼credream的帖子

在InputManWin8版本中,和4.0的ComboBox功能更接近(带有MaskFormat)的控件叫做GcMaskedComboBox,你试试这个。
等价代码大致如下我手写的啊,意思一下,编译不过见谅

Me.gcMaskedComboBox1.Fields.AddRange("\D")
Me.gcMaskedComboBox1.PromptChar = Global.Microsoft.VisualBasic.ChrW(32)

credream 发表于 2015-11-5 21:10:00

回复 2楼Leo的帖子

感谢。。。大神

Alice 发表于 2015-11-6 09:33:00

回复 3楼credream的帖子

不用客气。
您可以关注我们的微信服务号(微信号:GrapeCityDT),帖子有回复时可即时收到提醒,便于您第一时间查看,尽快解决技术问题。关注即可获得300金币用于兑换礼品。

credream 发表于 2015-11-12 11:31:00

回复 2楼Leo的帖子

有两个空格的时候怎么处理啊?

Leo 发表于 2015-11-12 15:14:00

回复 5楼credream的帖子

对不起。我忘记还有默认的Field没有清理了
在那两行Code之前再加上一句:
Me.gcMaskedComboBox2.Fields.Clear();

credream 发表于 2015-11-12 17:19:00

回复 6楼Leo的帖子

加入这句话之后:Me.gcMaskedComboBox1.Fields.AddRange("\D")
编译下会自动生成:
Dim MaskPatternField1 As GrapeCity.Win.Editors.Fields.MaskPatternField = New GrapeCity.Win.Editors.Fields.MaskPatternField()
MaskPatternField1.MaxLength = 1
MaskPatternField1.Pattern = "\D"
我们现在都是这样做的:
一个空格的时候:
Dim MaskPatternField1 As GrapeCity.Win.Editors.Fields.MaskPatternField = New GrapeCity.Win.Editors.Fields.MaskPatternField()
MaskPatternField1.MaxLength = 1
      MaskPatternField1.MinLength = 0
      MaskPatternField1.Pattern = "\D"
Me.cmbTicketType.PromptChar = Global.Microsoft.VisualBasic.ChrW(32)

两个空格的时候:主要是两个空格的时候下面这样对不对,会不会有隐式的风险,MinLength = 2
Dim MaskPatternField1 As GrapeCity.Win.Editors.Fields.MaskPatternField = New GrapeCity.Win.Editors.Fields.MaskPatternField()
MaskPatternField1.MaxLength = 2
      MaskPatternField1.MinLength = 2
      MaskPatternField1.Pattern = "\D\D"
Me.cmbTicketType.PromptChar = Global.Microsoft.VisualBasic.ChrW(32)


请大神帮忙确认下。。。没有问题,我们就可以在所有处理中这样展开了。。

Leo 发表于 2015-11-12 17:52:00

回复 7楼credream的帖子

MaskPatternField1.Pattern = "\D\D"
这句Code你想做什么?
MaskPatternField1.Pattern = "\D"就可以了啊。
MinLength=2确实可以工作,默认会显示两个PromptChar的占位符,也就是俩空格。

credream 发表于 2015-11-18 10:58:00

回复 8楼Leo的帖子

嗯嗯,\D\D这个的意思是只能输入数字吧?跟填写几个\D没关系对吧?需要两个占位符的时候,只需要把MinLength设置为2就可以了对吧?

Leo 发表于 2015-11-18 12:16:00

回复 9楼credream的帖子

写俩\D会引入不必要的麻烦,需要最少输入两位的时候,请只设置MinLength = 2
页: [1]
查看完整版本: InputManNETwin4中的Combo控件,只要按下面设置下,即使删除空格后,依然会有这个空格