比如点击获取高度通过serialport发送一串数据
然后在旁边对应的textbox中显示接收回来的数据
可是我确实没法用委托做到在不同的textbox中显示啊
在designer.cs里有这么一行代码
this.serialPort1.DataReceived += new System.IO.Ports.SerialDataReceivedEventHandler(this.textbox1_DataReceived);
这个只能指定一个textbox
我觉得问题是在这里
我想问问你有没有相应的代码参考一下呢
我邮箱zyseap@163.com 谢谢了!
你这个。。我觉得思路不对。貌似你用的数据绑定?
我觉得你应该this.serialPort1.DataReceived += new System.IO.Ports.SerialDataReceivedEventHandler(this.serialPort1_DataReceived);
然后自己定义这个serialPort1_DataReceived函数。
显示的时候用this.invoke(new Action(()=>{
//在这里更改你的textbox的值就应该可以了
}));
上边代码个别拼写可能存在问题。智能提示纠正一下即可。
可是怎么更改textbox的值呢
textbox1、textbox2不是数组形式的啊
不是数组形式的啊?没明白!textbox1.Text=....直接操作不就成了?
追问......点第二个button想在textbox2中显示
不是在textbox1中显示
你的button非常多吗?需要数组去管理?我有点明白你的这种偷懒想法了,但是就像我说的,这种相互无联系又不是很多的情况下其实单独写id是个好方法。如果非得偷懒,可以将textbox放入一个panel中,然后用panel1.controls找到所有textbox,索引即可。
追问恩,知道了
但是还有一个问题
用c#接收数据的时候在textbox中显示不出来
但在串口调试助手里头没有任何问题
而在buttonclick中添加一个显示提示框的东西就能显示了
这是什么问题?