Autor Beitrag
blutengel
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 59

Win XP, WIN 7
VS#2008 Prof
BeitragVerfasst: Do 25.02.10 01:40 
Hi!


ich habe in meinem Programm 2 Radio Button um die Schnittstelle einzustellen. Einmal COm1 und einmal Com2. Wenn ich Com1 wähle öffne ich den Port mit Com1.Open(); (habe das Steuerelement serialport umbenannt), und schliße falls geöffnet Com2 mit Com2.Close();
hier mal der Code:

ausblenden C#-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
 private void radioButton1_CheckedChanged(object sender, EventArgs e)
        {
            if (radioButton1.Checked)
            {
                COM1.Open();
                
            }
            else
            {
                COM1.Close();
            }
        }

        private void radioButton2_CheckedChanged(object sender, EventArgs e)
        {
            if (radioButton1.Checked)
            { 
                COM2.Open(); 
            }
            else
            {
                COM2.Close();
            }
        }




Wenn ich jetzt meinem Senden Button drücke steht dort drin:

ausblenden C#-Quelltext
1:
COM1.Write(richTextBox1.Text);					


Nun mein Problem:
Wenn ich auf Com2 wechsel steht ja dort immer noch Com1.
Wie schaffe ich es Das er beim ändern des Ports auch die Portbezeichnung in der Senden

Ich hab da leider kein Plan und würde mich über eine hilfreiche Antwort freuen. Am liebsten gut und einfach erklärt sodass ich als Laie das gut verstehen kann.


MFG


blutengel

Moderiert von user profile iconChristian S.: C#-Tags hinzugefügt
Moderiert von user profile iconChristian S.: Topic aus IO, XML und Registry verschoben am Do 25.02.2010 um 00:50
danielf
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 1012
Erhaltene Danke: 24

Windows XP
C#, Visual Studio
BeitragVerfasst: Do 25.02.10 09:00 
Hallo,

du könntest dir ein Property machen, welches dir den ausgewählten Serialport, anhand des gecheckten RadioButtons, zurück gibt.

ausblenden C#-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
private SerialPort ActivePort
{
   get {
       if (radioButton1.Checked)
       {
           return COM1;
       }
       else
       {
           return COM2;
       }
    }
}


oder eine member Variable, die du in deinem Changed-Event setzt.

Gruß Daniel