我正在使用文本框的keypress事件来处理仅选定输入。基本上,文本框允许用户输入可以计算的值。
例如,您可以键入(5*5)-(10/5)。
当前的方法类似于Convert.ToChar("*")==e.KeyChar等……
目前它不允许用户复制粘贴值。
有没有办法在keypress事件中检测ctrl+v?
更新:
目前我的做法是:
在按键事件中
例如,您可以键入(5*5)-(10/5)。
当前的方法类似于Convert.ToChar("*")==e.KeyChar等……
目前它不允许用户复制粘贴值。
有没有办法在keypress事件中检测ctrl+v?
更新:
目前我的做法是:
static IEnumerable<char> ValidFiancialCharacters
{
get
{
if(_validFiancialCharacters==null)
{
_validFiancialCharacters = new List<char>();
_validFiancialCharacters.Add(Convert.ToChar("0"));
_validFiancialCharacters.Add(Convert.ToChar("1"));
_validFiancialCharacters.Add(Convert.ToChar("2"));
// till 9 and
_validFiancialCharacters.Add(Convert.ToChar("+"));
_validFiancialCharacters.Add(Convert.ToChar("-"));
_validFiancialCharacters.Add(Convert.ToChar("/"));
//and some other
}
return _validFiancialCharacters;
}
}
public static bool ValidateInput(KeyPressEventArgs e)
{
if (ValidFiancialCharacters.Any(chr => chr == e.KeyChar))
{
e.Handled = false;
}
else
{
e.Handled = true;
}
return e.Handled;
}
在按键事件中
private void txtRate_KeyPress(object sender, KeyPressEventArgs e)
{
NumberExtension.ValidateInput(e);
}
textbox.Text
,将按键和复制粘贴的责任留给标准文本框处理吗? - CodesInChaos