Windows Forms中如何正确创建十进制数的掩码?
PowerShell WinForms MaskedTextBox 输入困扰
- 创建控件代码:
$txtValue = New-Object System.Windows.Forms.MaskedTextBox - 设置掩码
$txtValue.Mask = "999,999,999.9999"时,无法直接输入1.333,必须补全前置零为000,000,001.333(手动定位光标到对应位置操作不实用);使用掩码$txtValue.Mask = "000,000,000.00"时存在完全相同的问题。
尝试过两种解决方案,但均未解决问题:
- 添加TextChanged事件处理,但仅能修改第一个数字,功能失效:
$txtValue.add_TextChanged({ $mytxt = $txtValue.Text $txtValue.remove_TextChanged($thisEvent) $myValue.Text = [double]::Parse($mytxt) $txtShareValue.add_TextChanged($thisEvent) })
- 用正则表达式
[^0-9.]过滤非法字符并截取文本长度,但无法阻止输入多个连续小数点。
内容的提问来源于stack exchange,提问作者LegsNotHand
相关产品推荐
相关产品推荐

