Masked TextBox不会将10识别为10

时间:2014-02-06 07:12:16

标签: .net vb.net for-loop maskedtextbox

For i As Integer = 0 To mtPig.Text
        MessageBox.Show(i)
    Next

我使用了带有2位数字掩码的MaskedTextBox 如果我放10,它显示0和1 如果我把9,它显示0-9。

为什么不读取旁边的零? (10)
如何将10 读为 10? 的更新:
enter image description here

4 个答案:

答案 0 :(得分:2)

试试这个:

For i As Integer = 0 To Integer.Parse(mtPig.Text)
    MessageBox.Show(i)
Next

答案 1 :(得分:2)

好吧,问题是您的PrompChar:0,所有0都将被视为提示字符并从值中丢弃。

要解决此问题,请执行

  • 将您的PromptChar更改为_(下划线)
  • 或将名为TextMaskFormat的MaskedTextbox属性设置为IncludePrompt

GOOG Luck !!

答案 2 :(得分:1)

  

For循环不识别10为10

不,For循环不会将字符串神奇地转换为int。

投射,转换,在代码中执行。但是不要以为编译器会神奇地做转换。

答案 3 :(得分:0)

你必须将它转换为整数然后尝试这个......:

Cint(mtPig.Text) 

Convert.ToInt32(mtPig.Text)