我的代码是这样的:
还要加什么代码才能在textbox里显示出来啊?private void 手动发送_Click(object sender, EventArgs e)
{
serialPort1.Open();
serialPort1.Write(textBox输入框.Text);
serialPort1.DataReceived += new SerialDataReceivedEventHandler(serialPort1_DataReceived);
serialPort1.Close();
}private void serialPort1_DataReceived(object sender, SerialDataReceivedEventArgs e)
{ int num = serialPort1.BytesToRead; //获取缓冲数据个数
byte[] data = new byte[num];
serialPort1.Read(data, 0, num);
}
还要加什么代码才能在textbox里显示出来啊?private void 手动发送_Click(object sender, EventArgs e)
{
serialPort1.Open();
serialPort1.Write(textBox输入框.Text);
serialPort1.DataReceived += new SerialDataReceivedEventHandler(serialPort1_DataReceived);
serialPort1.Close();
}private void serialPort1_DataReceived(object sender, SerialDataReceivedEventArgs e)
{ int num = serialPort1.BytesToRead; //获取缓冲数据个数
byte[] data = new byte[num];
serialPort1.Read(data, 0, num);
}
解决方案 »
- 求助 与实现效果不符
- 关于c#向pdf文档中导入矢量图文件的问题
- quartz.net问题
- 用C#写的一个UDP的Socket程序,传送多个图片数据,正常显示了几个图片后就报错:一个在数据报套接字上发送的消息大于内部消息缓冲器或其他一些网络限制,或该用户用于接收数据报的缓冲器比数据报小。
- C#中实现获取字符串中汉字字符的拼音声母
- 只能允许查看文件,不能保存和打印,如何实现?
- 必须是2000server系统下才能用全文索引?(sql2000里)
- 关于数据库连接数问题的一点心得!!!请高手指正。
- C#根据查询条件 取到这个数据为空时,
- ClickOnce发布C#应用程序时怎样关联外部文件夹
- C# 自定义控件的问题
- 求:dwg的文件格式分析文档
serialPort1.Read(data, 0, num);
后面
加上:
txtBox.Text = data.ToString();
就行了吧。很简单
顺便问一句,你接收到的串口的数据是乱码吗?我也做了一个程序,但是接收到的是乱码,可不可以把你SerialPort配置的代码发一下?
public void OnDataReceived(object sender, System.IO.Ports.SerialDataReceivedEventArgs e)
{
Invoke(new EventHandler(GetData));
}
或者用属性
CheckForIllegalCrossThreadCalls = false;
private void serialPort1_DataReceived(object sender, SerialDataReceivedEventArgs e)
{ int num = serialPort1.BytesToRead; //获取缓冲数据个数
byte[] data = new byte[num];
serialPort1.Read(data, 0, num);
mystr=data.ToString();
} private void Button1_Click(object sender, EventArgs e)
{
txtBox.Text = data.ToString();
}
Binding binding = new Binding("Value");
bi.Source = this;
txtBox.SetBinding(TextBox.TextProperty, binding);private void serialPort1_DataReceived(object sender, SerialDataReceivedEventArgs e)
{
int num = serialPort1.BytesToRead; //获取缓冲数据个数
byte[] data = new byte[num];
serialPort1.Read(data, 0, num);
Value = data.ToString();
}
public delegate void InvokeDelegate();
public void Display()
{
txtReceive.Text += strReceive;
}
private void serialPort1_DataReceived(object sender, SerialDataReceivedEventArgs e)
{ // 接收缓冲区中数据的字节数
int int_Len = serialPort1.BytesToRead; // 接收数据
byte[] bytes = new byte[int_Len];
serialPort1.Read(bytes, 0, int_Len); strReceive = bytes.ToCharString;
txtReceive.BeginInvoke(new InvokeDelegate(Display));
}