ต้องการเขียนโปรแกรมให้ Form อัตเดตข้อมูลพร้อมกันหลายๆฟอร์ม ครับควรทำยังไง
เช่น รับค่าจาก Serial port แล้วส่งค่าไปยังหลายๆ ฟอร์ม จากตัวอย่างมันอัตเดต แค่ ฟอร์มหนึ่ง ครับ
Code (C#)
private void updateLabel()
{
//a = my.getData();
label1.Text = inCommingByte.ToString();
}
public Form1()
{
InitializeComponent();
// my = new Serial();
try
{
comboBox1.Items.Clear();
foreach (string ser in SerialPort.GetPortNames())
{
comboBox1.Items.Add(ser);
}
comboBox1.SelectedIndex = 0;
}
catch
{
throw new Exception();
}
}
private void button1_Click(object sender, EventArgs e)
{
if (IsConnect == false)
{
myport = new SerialPort(comboBox1.SelectedItem.ToString(), 9600, Parity.None, 8, StopBits.One);
if (myport != null)
{
myport.Open();
myport.DataReceived += new SerialDataReceivedEventHandler(serial_DataReceived);
Form2 f2 = new Form2(this);
OnSendMessage += f2.MessageReceived;
f2.Show();
btnConnect.Text = "Disconnect";
comboBox1.Enabled = false;
}
}
else
{
if (IsConnect)
{
btnConnect.Text = "Connect";
comboBox1.Enabled = true;
myport.Close();
}
}
}
private void serial_DataReceived(object sender, SerialDataReceivedEventArgs e)
{
inCommingByte = myport.ReadLine();
OnSendMessage(sender, e);
this.BeginInvoke(new updateData(updateLabel));
}
Tag : C#, VS 2012 (.NET 4.x), Objective-C, Windows