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