Willkommen auf myCSharp.de! Anmelden | kostenlos registrieren
 | Suche | FAQ

Hauptmenü
myCSharp.de
» Startseite
» Forum
» Suche
» Regeln
» Wie poste ich richtig?

Mitglieder
» Liste / Suche
» Wer ist online?

Ressourcen
» FAQ
» Artikel
» C#-Snippets
» Jobbörse
» Microsoft Docs

Team
» Kontakt
» Cookies
» Spenden
» Datenschutz
» Impressum

  • »
  • Portal
  • |
  • Mitglieder
Beiträge von Mr Bean
Thema: CS0176: Auf den Member "X" kann nicht mit einem Instanzenverweis zugegriffen werden.
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

Hallo

Ich habe bisher eigentlich nur Programme für µController in C geschrieben. Nun wollte ich in C# ein Programm schreiben um damit auf einen µController zuzugreifen (UART).
Ich habe es bis jetzt soweit geschafft, einen COM Port zu öffnen.
Außerdem hab ich in es geschafft, in der MainForm eine Combobox mit den verfügbaren COM Ports zu füllen:


namespace DataLogger
{
	public partial class MainForm : Form
	{
		private static System.IO.Ports.SerialPort serialPort1;
		
		// Get a list of serial port names.
        string[] ports = SerialPort.GetPortNames();

		public MainForm()
		{
			InitializeComponent();
            
			foreach(string port in ports)
			{
				COMPortList.Items.Add(port);
			}
			BaudList.Items.Add("115200");
			BaudList.Items.Add("9600");
			BaudList.SelectedIndex = 0;
			COMPortList.SelectedIndex = 0;
		}
		
		void MainFormLoad(object sender, EventArgs e)
		{
			
		}
	}
}

Wenn ich das gleiche jetzt innerhalb des EventHandlers machen möchte, also der ComboBox immer aktualisiert wird wenn ich darauf klicke, dann bekomme ich folgende Fehlermeldung:
Zitat
Auf den Member "System.IO.Ports.SerialPort.GetPortNames()" kann nicht mit einem Instanzenverweis zugegriffen werden. Qualifizieren Sie ihn stattdessen mit einem Typnamen. (CS0176)


Hier der entsprechende Code:


void COMPortListSelectedIndexChanged(object sender, EventArgs e)
		{
			string [] availablePorts = serialPort1.GetPortNames();
			foreach(string port in ports)
			{
				COMPortList.Items.Add(port);
			}
		}

Wahrscheinlich ist das Problem recht simpel, aber irgendwie komme ich nicht drauf. Könnt ihr mir hier irgendwie helfen?

Grüße

Bean