Я использую этот код для события bunifuTextbox
нажатия клавиш, и он прекрасно работает:
//accept only 3 decimal places
if (System.Text.RegularExpressions.Regex.IsMatch(quantitytextbox.Text, @"\d+(\.\d{3,3})") && !char.IsControl(e.KeyChar))
{
e.Handled = true;
}
if (e.KeyChar == '.' && quantitytextbox.Text.Length == 0)
{
// Stop first char as a dot input
e.Handled = true;
}
if (!char.IsControl(e.KeyChar) && !char.IsDigit(e.KeyChar) && (e.KeyChar != '.'))
{
e.Handled = true;
}
// only allow one decimal point
if ((e.KeyChar == '.') && ((sender as Bunifu.Framework.UI.BunifuMaterialTextbox).Text.IndexOf('.') > -1))
{
e.Handled = true;
}
Может кто-нибудь, пожалуйста, скажите мне, что поместить в это условие "если", потому что это где ошибкапроисходит, когда я пытаюсь использовать этот код для моего datagridview
:
// only allow one decimal point
if ((e.KeyChar == '.') && ((sender as /* I dont know what to put here*/).Text.IndexOf('.') > -1))
{
e.Handled = true;
}