Form1 への参照を必要としないように、SerialPort をパラメーターとして受け取る Form2 のメソッドを個人的に作成します。私はこのようなことをします。または、SerialPort をパラメーターとして受け取る Form2 に対してコメントされた jaminator のようなカスタム コンストラクターを作成できます。
フォーム1
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
Form2 frm2 = new Form2();
frm2.setSerialPort(serialPort1);
frm2.Show();
}
}
フォーム2
public partial class Form2 : Form
{
SerialPort myPort;
public Form2()
{
InitializeComponent();
}
public void setSerialPort(SerialPort port)
{
myPort = port;
}
}
カスタム コンストラクターを使用した 2 番目のオプション
フォーム1
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
Form2 frm2 = new Form2(serialPort1);
frm2.Show();
}
}
フォーム2
public partial class Form2 : Form
{
SerialPort myPort;
public Form2( SerialPort port)
{
InitializeComponent();
myPort = port;
}
}