【发布时间】:2017-10-09 08:34:37
【问题描述】:
我有一个文本框元素,我只想接受字节值。请注意,我对 c# 很陌生,如果我遗漏了一些明显的东西,请见谅。
所以我有这段代码
if (!byte.TryParse(last, out num) && last.Length > 1)
{
System.Media.SystemSounds.Asterisk.Play();
zBox.Text = zBox.Text.Remove(last.Length - 1);
}
所以,我希望用户在此处仅输入字节值,而除数字之外的任何其他内容都将被忽略(删除并播放声音表示输入错误)。那里的一段代码解决了第一个输入值可以是字母的问题。如果我不使用 .length > 1,那么我会得到预期。
验证输入的值是否为字节类型的最佳方法是什么?
【问题讨论】:
-
您需要删除一个已经输入的字符 - 您应该考虑在实际更改值之前进行验证。
-
@user6144226 我试图实现这一点,但我不知道该怎么做。有什么指点吗?
-
看我的回答。该指针用于处理 PreviewTextInput 事件并设置 TextCompositionEventArgs 的 Cancel 属性。