1. 程式人生 > >WPF 16進制byte輸入框

WPF 16進制byte輸入框

protected convert gpo prot 控件 接受 col 新建 hex

在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);
        }

在界面上使用該用戶控件即可。

WPF 16進制byte輸入框