Meddelande från en WinForms till en TinyDuino (9 / 14 steg)
Steg 9: Fylla ComboBox (steg 1 och 2)
För att fylla ComboBox placeras vi först med tillgängliga seriella COM-portar måste vi skapa en händelse som bränder när formuläret är fullastad. För att göra detta helt enkelt välja den fullständiga formen genom att klicka direkt på den och klicka på ikonen små belysning i egenskapsfönstret. Detta öppnar upp de tillgängliga händelserna för formuläret.
Vid evenemanget titeln beläggningstypen namnet på händelsehanteraren. I detta fall skriver du "OnWindowLoad" och tryck enter. Visual studio kommer att skapa händelsehanteraren i koden bakom för vårt projekt och ladda det direkt.
Nu när vi har vårt formulär utformade och första händelsehanteraren ställa in kommer vi börja arbeta på koden för att fylla din ComboBox.
Det första steget är att fylla din ComboBox med COM-portar som har en seriella anslutningar tillgängliga på dem. Eftersom TinyDuino använder bör serial att kommunicera med vår dator detta göra det lättare att hitta rätt porten.
Det kommer att ta fyra steg för att göra detta:
- Skapa en ny klass för att innehålla de seriella portarna
- Fylla i en strängmatris med de tillgängliga seriella portarna
- Konvertera arrayen till en lista över objekt
- Visa listan i vår kombinationsrutan för användaren att välja rätt hamnen
Steg ett är förmodligen den mest komplicerade delen. Vi kommer att definiera en ny klass för att representera våra seriella portar. Detta är koden för att göra det:
allmän klass Port
{
sträng med offentlig namn {get, uppsättning;} / / definierar en egenskap som kallas namn
Public int värdet {get, uppsättning;} / / definierar en egenskap som kallas värde
offentliga Port (sträng n, int jag) / / en konstruktör att göra att lägga till portar lättare
{
Namn = n;
Värde = i.
}
}
Detta block av kod kan läggas var som helst inuti "namnområde MotorController" block i Form1.cs.
Steg två vi kommer att fylla en strängmatris med de tillgängliga serieportarna detta är koden för att göra det:
string [] avalablePorts = SerialPort.GetPortNames();
Detta är mycket enkelt, allt vi gör är skapa en ny matris med strängar som kallas avalablePorts och fylla den med funktionen "SerialPort.GetPortNames()" . Du kommer också vill lägga till i namnområdet System.IO.Ports i projektet genom att ange "med System.IO.Ports;" till toppen av ditt projekt. Detta kommer att säkerställa din kod har tillgång till seriell kommunikation biblioteket i windows.