c# - 如何在 Windows Phone 8.1 中阻止一个特定的键

标签 c# regex windows-phone-8.1 windows-8.1

很抱歉这个可能很简单的问题,但我发现我什么都不懂。 我只需要在文本框中屏蔽一个键...假设“_”...所以我想允许除下划线以外的所有符号

这是我目前所拥有的...

private void inputName_KeyDown(object sender, KeyRoutedEventArgs e)
{
    if (!Regex.IsMatch(inputName.Text, @"_"))
    {
        e.Handled = true;
    }
}

...但实际上我不明白正则表达式的工作原理以及如何使用它来满足我的需要。 感谢您的帮助。

我已经通过...解决了这个问题

inputName.Text = inputName.Text.Replace("_", "");

关于此文本框的 LostFocus 事件...但这当然不好

最佳答案

这是更好的解决方案,对于下划线“_”:

private void TextBox_KeyDown(object sender, KeyRoutedEventArgs e)
{
    if (e.Key == (VirtualKey)(189))
    {
         e.Handled = true;
    }
}

其他特殊字符的虚拟键码:

Semicolon (;) 186 Colon (:) 186 Plus (+) 187 Equals sign (=) 187 Comma (,) 188 Less than sign (<) 188 Minus (-) 189 Underscore (_) 189 Period (.) 190 Greater than sign (>) 190 Question mark (?) 191 Forward slash (/) 191 Backtick (`) 192 Tilde (~) 192 Opening square bracket ([) 219 Opening curly bracket ({) 219 Backslash () 220 Pipe (|) 220 Closing square bracket (]) 221 Closing curly bracket (}) 221 Single quote (') 222 Double quote (") 222

关于c# - 如何在 Windows Phone 8.1 中阻止一个特定的键,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27148341/

相关文章:

python - 如何提取和忽略标记中的跨度? - Python

c# - JavaScript 中的动态 Html.ActionLink?

c# - 如何在 WinXP 中使用 IIS 5.1 发送邮件?

php - 正则表达式 匹配字符串

c# - 在 Windows Phone 8.1 上连接和断开蓝牙 BLE

javascript - Segoe UI 锁定和解锁 AppBar 中的符号字形

c# - 语音识别器脱机功能Windows Phone 8.1

c# - 延迟初始化注入(inject)构造函数的依赖项

c# - MVC - 如何从 URL 请求并保存 pdf 文件

php - 如何查找字符串是否包含所有英文字母或阿拉伯文字母