Como Enumerar los Com's de nuestro equipo en Vb y en C#
Contestando a la pregunta de Meta, sobre el código en VB:
Me.ComboBox1.Items.AddRange(My.Computer.Ports.SerialPortNames.ToArray)
‘ En el evento SelectedIndexChanged… del ComboBox1
PuertoSerie.Close()
PuertoSerie.PortName = ComboBox1.SelectedItem
PuertoSerie.Open()
<Meta>
Mi pregunta es, ¿puedes hacer lo mismo en Visual C#?
Creo que falta más detalle en la explicación, ya que deseo que en el comboBox tenga el COM1 y COM2 para seleccionar. … vb no lo interpreto bien.
private System.Windows.Forms.ComboBox comboBox1;
private System.IO.Ports.SerialPort PuertoSerie;
public Form1()
{
InitializeComponent();
this.comboBox1 = new System.Windows.Forms.ComboBox();
// comboBox1
this.comboBox1.FormattingEnabled = true;
this.comboBox1.Name = "comboBox1";
this.Controls.Add(this.comboBox1);
}
private void Form1_Load(object sender, EventArgs e)
{
// GetPortNames, nos devuelve un array con los nombres
// de los puertos instalados en nuestro equipo
String[] Ports = System.IO.Ports.SerialPort.GetPortNames();
this.comboBox1.Items.AddRange(Ports);
}
// En el evento SelectedIndexChanged… del ComboBox1
{
// ... Por ejemplo
PuertoSerie.Close();
PuertoSerie.PortName = this.comboBox1.SelectedItem.ToString();
PuertoSerie.Open();
}
En el ejemplo anterior para no crear confusión he incluido la parte de añadir el comboBox al form, de esa forma le podemos seguir la pista. También puedes inicializar directamente los ítems del combo , pero he preferido utilizar el array ‘Ports’ para diferenciar la operación. De esa forma quizás sean más inteligible.
Saludos,
Pep Lluis,