C# 是否可以使用MaskedTextBox接受十六进制格式的输入?

C# 是否可以使用MaskedTextBox接受十六进制格式的输入?,c#,user-controls,C#,User Controls,是否可以使用MaskedTextBox接受十六进制格式的用户输入?正常的解决方案类似于接受密钥输入,如果它不是允许的字符,则放弃。还有其他方法吗?可能会更改框的类型,将其设置为字符串,然后将字符串重新格式化为十六进制。可能会更改框的类型,将其设置为字符串,然后将字符串重新格式化为十六进制。否,MaskedTextBox不能用于通过使用掩码将输入限制为十六进制,但任何文本框都可以通过将事件处理程序附加到KeyUp(或KeyPress)事件来使用。然后,处理程序可以根据十六进制集([0-9a-fA-

是否可以使用MaskedTextBox接受十六进制格式的用户输入?正常的解决方案类似于接受密钥输入,如果它不是允许的字符,则放弃。还有其他方法吗?

可能会更改框的类型,将其设置为字符串,然后将字符串重新格式化为十六进制。

可能会更改框的类型,将其设置为字符串,然后将字符串重新格式化为十六进制。

否,MaskedTextBox不能用于通过使用掩码将输入限制为十六进制,但任何文本框都可以通过将事件处理程序附加到KeyUp(或KeyPress)事件来使用。然后,处理程序可以根据十六进制集([0-9a-fA-F])检查键入的字符,如果无效,则拒绝按键。

否,不能使用掩码将输入限制为十六进制,但可以通过将事件处理程序附加到KeyUp(或KeyPress)事件来使用任何文本框。然后,处理程序可以根据十六进制集([0-9a-fA-F])检查键入的字符,如果无效,则拒绝按

private: System::Void maskedTextBox1_KeyPress(System::Object^  sender, System::Windows::Forms::KeyPressEventArgs^  e) 
         {
             String^ temp = "012345679abcdefABCDEF";
             if (temp->IndexOf(e->KeyChar) == -1)
             {
                 e->Handled = true;
             }
         }
用于十六进制字符控制

用于十六进制字符控制