我想要一個Integer中的小數點。如果小數點不在那裏,它顯示錯誤消息。驗證整數
先生,以下代碼寫在用戶控制文本框中。用戶給出的最大長度當他訪問用戶控件時。
以下代碼限制用戶在最大長度後輸入小數點。
請運行該代碼爵士,
public virtual int MaximumLength { get; set; }
private void txtCurrency_KeyPress(object sender, KeyPressEventArgs e)
{
txtCurrency.MaxLength = MaximumLength + 3;
int dotIndex = txtCurrency.Text.IndexOf('.');
if (e.KeyChar != (char)Keys.Back)
{
if (char.IsDigit(e.KeyChar))
{
if (dotIndex != -1 && dotIndex < txtCurrency.SelectionStart && txtCurrency.Text.Substring(dotIndex + 1).Length >= 2)
{
e.Handled = true;
}
else if (txtCurrency.Text.Length == MaximumLength)
{
if (e.KeyChar != '.')
{ e.Handled = true; }
}
}
else
{
e.Handled = e.KeyChar != '.' || dotIndex != -1 || txtCurrency.Text.Length == 0 || txtCurrency.SelectionStart + 2 < txtCurrency.Text.Length;
}
}`enter code here`
偉大的...你有什麼試過嗎? – 2013-02-22 03:50:52
我不明白...有什麼想法嗎? – 2013-02-22 03:54:30