我试图在 PreviewKeyDown 事件中读取文本框的当前值,但无法获取当前值。
这是我的代码,
private void txtDoscountValue_PreviewKeyDown(object sender, KeyEventArgs e)
{
try
{
if (txtDoscountValue.Text == string.Empty)
discountPercentage = 0;
else
discountPercentage = float.Parse(txtDoscountValue.Text);
CalculateCart(cartItems, discountPercentage, 0);
}
catch
{ }
}
最佳答案
也许您的问题是您在 PreviewKeyDown
处询问,因此当它被调用时,框中仍然没有任何值。如果您想在框实际更改时被调用,您需要 Hook KeyDown
或更好的 TextChanged
。
PreviewKeyDown
用于在实际应用更改之前检查更改的内容,这是一种验证。
修改的值存储在keyEventArgs
中,而不是在文本框中。
关于c# - 我们不能在 PreviewKeyDown 事件中获取文本框的当前值吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33993823/