1、串口接收函数中调用的MessageBox.Show()不能总是显示在最上层,当点击别的地方时会跑到下层,但是在别的函数中没有这个问题
解决:使用显示方式如下
MessageBox.Show("xxxx", "xxxx", MessageBoxButtons.OKCancel, MessageBoxIcon.Information, MessageBoxDefaultButton.Button1, MessageBoxOptions.DefaultDesktopOnly);
2、判断字符串中是否有汉字
1个汉字的系统默认转码为2个字节,而其长度在string.Length中为1,英文或数字的默认转码为1个字节,长度也为1,据此判断如下
string str = textBox1.Text;
byte[] by = System.Text.Encoding.Default.GetBytes(str);
if (by.Length != str.Length)
{
MessageBox.Show("文本中有汉字", "警告",MessageBoxButtons.OK, MessageBoxIcon.Warning);
return;
}