WPF 16进制byte输入框

2021-02-14 04:19

阅读:664

在WPF中,针对byte类型的输入控件可以选用 XCEED 的免费库中的 Xceed.Wpf.Toolkit.ByteUpDown(可从nuget获取)。

若要使该控件在界面上以16进制显示byte,则将其 FormatString="X" 即可。

然而此时,在其中键入数字时,仍然是按照 10 进制输入(例如,键入‘A’,会失败,键入‘16’,会显示‘10’),那如何令其接受 16 进制的输入呢?

可新建用户控件,使其直接继承自 Xceed.Wpf.Toolkit.ByteUpDown ,并重写 ConvertTextToValue 方法:

        protected override byte? ConvertTextToValue(string text)
        {
            //输入hex字符串
            return System.Convert.ToByte(text, 16);
        }

在界面上使用该用户控件即可。


评论


亲,登录后才可以留言!