我在 VB 中验证它的 KeyPress 事件上的文本框。
VB.Net
If InStr("0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz`~!@#$%^&*()_+|\[]{};:<>/?,.'" & """" & Chr(8), Chr(KeyAscii)) = 0 Then KeyAscii = 0
它在 C# 中的等价物是什么?谢谢。
if (Strings.InStr("0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz`~!@#$%^&*()_+|\\[]{};:<>/?,.'" + "\"" + Strings.Chr(8), Strings.Chr(KeyAscii)) == 0)
KeyAscii = 0;
您将需要参考具有String.InStr方法实现的 Microsoft.VisualBasic 库。
if (Strings.InStr("0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz`~!@#$%^&*()_+|\\[]{};:<>/?,.'" + "\"" + Strings.Chr(8), Strings.Chr(KeyAscii)) == 0)
KeyAscii = 0;
我用这个转换器
if (Strings.InStr("0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz`~!@#$%^&*()_+|\\[]{};:<>/?,.'" + "\"" + Strings.Chr(8), Strings.Chr(KeyAscii)) == 0)
KeyAscii = 0;
来自代码翻译:
if (((("0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz`~!@#$%^&*()_+|\\[]{};:<>/?,.\'" + ("\"" + '\8')).IndexOf(((char)(KeyAscii))) + 1)
== 0))
{
KeyAscii = 0;
}
【不知道哪个是对的!概率:第一个]