是否可以使用MaskedTextBox接受HexaDecimal格式的输入?

时间:2011-06-03 15:18:13

标签: c# user-controls

是否可以使用MaskedTextBox接受十六进制格式的用户输入?正常的解决方案就像接受键输入一样,如果它不是允许的字符则丢弃。还有其他方法吗?

3 个答案:

答案 0 :(得分:1)

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

答案 1 :(得分:0)

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

答案 2 :(得分:0)

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

将其用于hex char控件。

相关问题