private void OnOff(bool sw) { EchonetLite.EObject eo = new EchonetLite.EObject(); foreach (EchonetLite.EObject item in EObjects) { if (item.InstanceCd == (byte)nudNumber.Value) { eo.Number = item.Number; eo.IPAddress = item.IPAddress; eo.GroupCd = item.GroupCd; eo.ClassCd = item.ClassCd; eo.InstanceCd = item.InstanceCd; break; } } EchonetLite echonetLite = new EchonetLite(); echonetLite.SwitchSet(eo, sw); }
private void button1_Click(object sender, EventArgs e) { button1.Enabled = false; textBox2.Enabled = false; nudNumber.Enabled = false; btnON.Enabled = false; btnOFF.Enabled = false; textBox2.Text = ""; if (LocalIP == "") { textBox1.AppendText("DHCPで取得した自分のIPアドレスを読み込み中\r\n"); LocalIP = GetLocalIPV4Address("DHCP"); textBox1.AppendText("ローカルIPアドレス : " + LocalIP + "\r\n"); } EchonetLite echonetLite = new EchonetLite(LocalIP); string errmsg = ""; EObjects = echonetLite.SearchObject(ref errmsg); textBox1.AppendText(errmsg + "\r\n"); if (EObjects != null) { int min = 0; int max = 0; textBox1.AppendText("検索結果\r\n"); if (EObjects.Count > 0) { textBox1.AppendText("応答 IPアドレス: " + EObjects[0].IPAddress + "\r\n"); textBox2.Text = EObjects[0].GroupCd.ToString("X2") + EObjects[0].ClassCd.ToString("X2"); max = EObjects[0].InstanceCd; min = EObjects[0].InstanceCd; } string name = "ノード : "; string str = ""; for (int i = 0; i < EObjects.Count; i++) { str = EObjects[i].GroupCd.ToString("X2") + EObjects[i].ClassCd.ToString("X2"); str += EObjects[i].InstanceCd.ToString("X2") + "\r\n"; textBox1.AppendText(name + str); max = max < EObjects[i].InstanceCd ? EObjects[i].InstanceCd : max; min = min > EObjects[i].InstanceCd ? EObjects[i].InstanceCd : min; } textBox2.Enabled = true; nudNumber.Enabled = true; nudNumber.Maximum = max; nudNumber.Minimum = min; btnON.Enabled = true; btnOFF.Enabled = true; nudNumber.Focus(); } button1.Enabled = true; }