我已經爲使用C#.NET的Windows應用程序創建了自定義文本框。它必須接受小數點(浮點數),如8.32和16.002。在C#.NET中接受十進制的自定義文本框
我已經構建了以下算法。它只接受純數字。我無法弄清楚如何使它接受浮動。
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Drawing;
using System.Data;
using System.Text;
using System.Windows.Forms;
namespace SmartTextBoxLib
{
public partial class SmartTextBox : TextBox
{
public SmartTextBox()
{
InitializeComponent();
}
protected override void OnKeyPress(KeyPressEventArgs e)
{
if (!char.IsControl(e.KeyChar) && !char.IsDigit(e.KeyChar))
{
e.Handled = true;
}
base.OnKeyPress(e);
}
}
}
'OnKeyPress'是錯誤的事件使用。如果有人用鼠標在文本框中粘貼文本會怎麼樣?你應該簡單地使用其中一個現有的蒙面文本框。 –
我知道Masked Text-Boxes的存在。我只是試圖爲了學習而重新發明輪子。所以,如果你能建議任何替代解決方案,將不勝感激。 –