在做串口通信的过程中,导师要求,能将多个子设备分为同一个组,实现统一发送命令。原理如图所示:

有子设备A、B、C与串口进行通信,我们可以分别给A、B、C发送命令,为了能一次统一发送命令,要求把A、B、C划分为一个组,如发送字符串001122,则是给组下面的每个成员发送的001122。
请问使用什么控件可以实现以上功能,用ListView或ListBox可以实现分组吗???
多谢回答,感激不尽!!!
------解决思路----------------------
winform + socket的问题让 拉灯同学来回答,我不擅长这个……

------解决思路----------------------
按组应该不是你这个意思吧,指令发送到组,这样指令和具体设备之间就没有了关系,然后组将指令依次发到各个子设备,很典型的观察者啊
------解决思路----------------------
public class Group
{
private List<Device> _list = new List<Device>();
public bool SendMessage(string message)
{
foreach (var device in this._list)
{
device.SocketSend(message);
}
throw new NotImplementedException();
}
/// <summary>
/// 添加被通知者
/// </summary>
public void Attach(Device device)
{
if (!this._list.Any(d => d.Name == device.Name))
{
this._list.Add(device);
}
}
/// <summary>
/// 移除被通知者
/// </summary>
public void Detch(Device device)
{
var dv = this._list.FirstOrDefault(d => d.Name == device.Name);
if (dv != null)
{
this._list.Remove(dv);
}
}
}
public class Device
{
/// <summary>
/// 设备名称
/// </summary>
public string Name { get; private set; }
public Device(string name)
{
this.Name = name;
}
public bool SocketSend(string message)
{
//Socket部分编码
throw new NotImplementedException();
}
}
给你相关的代码……
然后用起来就是
Group gpA = new Group();
gpA.Attach(new Device("A"));
gpA.Attach(new Device("AA"));
Group gpB = new Group();
gpA.SendMessage("demo");
------解决思路----------------------

楼主呀,你应把分楼搞到100分,我就能看到了。我一般只关注100分的贴子,
不过你很幸运。今天我尽然看25分的贴子。。。
------解决思路----------------------
这个问题网上问的人很多,但是貌似没有啥解决办法,有没有大神啊!