我有两个 WPF 表单(主要和预订时间)。一旦应用程序从串行端口接收到前缀为“EMPXXXX”的员工数据,主窗体将处理调用并更新 UI。然后将根据用户的日志显示“开始工作”和“切换工作”两个按钮。现在用户将按下开始或切换按钮,这将带来预约时间屏幕。现在用户将扫描以“JOBXXXX”为前缀的工作表。预订时间屏幕应在文本框中显示作业代码,并在用户按下按钮屏幕中的“是”或“否”按钮时更新数据库。
请有人告诉我在两个 WPF 表单之间共享接收数据并基于“EMP”或“JOB”前缀更新它们的适当方法。
我正在考虑创建一个通用类,它将在 serialdatareceive 事件中接收数据并基于前缀调用适当的处理方法。
Class SerialDataReceive {
Serialport SP = new serialport("COM1",9600);
SP.DataReceived += New SerailPortDataReceiveHandler(DataReceiveHandler);
}
private voif SerialPortDataReceiveHandler(object sender, serialdatareceiveeventArg e)
{
SerialPort SP1 = new serialport(sender);
sCommdata = Sp1.ReadExisting();
If(ScommData.substring(0,3)== "EMP")
{
//call the function in Main form
}
else
{
// call function in BookTime.XAML.Cs and update the UI
}
}
}
这是一个可行的解决方案吗?