Comment afficher un tableau de chaîne dans une zone de texte

Salut, je suis nouveau en C# et j'ai eu des problèmes avec ma première application windows form.

J'ai des données en provenance du port série et ont travaillé sur la manière de traiter et de stocker les données dans 3 différents tableaux de chaîne. Ce que je ne peux pas travailler, c'est comment afficher les données dans les tableaux dans leurs propres zones de texte, je ne veux afficher les données dans le tableau pointé par l'indice actuel de la position.

J'ai 3 zones de texte dans mes fenêtres, la conception des formulaires déjà, ils sont nommés:
textBoxmag, textBoxlat et textBoxlon
Je voudrais afficher les variables string[] mag, string[] lat et string[] lon dans leurs zones de texte correspondantes.

S'il vous plaît aidez-moi les gars j'ai bien coincé avec ce même s'il peut sembler simple pour vous de l'expérience en C# programmeurs. Ci-dessous mon code:

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace WindowsFormsApplication1
{
public partial class Form1 : Form
{
string RxString;//where the raw serial data is stored
string[] mag = new string[1000];//where magnetic data is stored 
string[] lat = new string[1000];//where latidude data is stored
string[] lon = new string[1000];///where longitude data is stored 
string ends = "\r\n";//end of data sentence identifier
string starts = "G";//start of data sentence identifier
int i; //index lat data 
int j;//index lon data
int k;//index mag data
public Form1()
{
InitializeComponent();
}
private void buttonStart_Click(object sender, EventArgs e)
{
serialPort1.PortName = "COM5";//define sierial port in which PIC is connected to
serialPort1.BaudRate = 4800;//set baud rate to match PIC
serialPort1.Open();
if (serialPort1.IsOpen)//if the port is open you can press the start button
{
buttonStart.Enabled = false;//start button disbaled
buttonStop.Enabled = true;//stop button enabled
textBox1.ReadOnly = false;//allow writing in text box
}
}
private void buttondtop_Click(object sender, EventArgs e)
{
if (serialPort1.IsOpen)
{
serialPort1.Close();
buttonStart.Enabled = true;
buttonStop.Enabled = false;
textBox1.ReadOnly = true;
}
}
private void DisplayText(object sender, EventArgs e)
{
textBox1.AppendText(RxString);//add watever is in raw data string to what is already in text box
}
private void serialPort1_DataReceived(object sender, System.IO.Ports.SerialDataReceivedEventArgs e)//activates when port is open and data in buffer
{
RxString = serialPort1.ReadExisting();//read raw data from serial port into string
this.Invoke(new EventHandler(DisplayText));//invoke allows it to call function diplay text
if (RxString.StartsWith(starts))//if the string starts with "G"
{
if ((RxString.Length > 36))//if there is aleast one string sentence
{
if (RxString.EndsWith(ends))//if the string ends with "\r\n" process the string
serialPort1.Close();//close serial port 
lat[i] = RxString.Split(',')[0].Substring(4);//extract latitude store in string array
i++;//increment index of latitude data array
lon[j] = RxString.Split(',')[2];//extract longitude store in string array
j++;//increment index of longitude data array
mag[k] = RxString.Split(',')[3].Substring(7).Trim();//extract magnetic data store in string array
k++;//increment index of magnteric data array
RxString = null;//Reset raw data string
serialPort1.Open();//open serial port ready for new string sentence
}
}
else RxString = null;//if the raw data string sentence does not start with "G" reset the array
}
private void Form1_FormClosing(object sender, FormClosingEventArgs e)
{
if (serialPort1.IsOpen) serialPort1.Close();
}
private void labellat_Click(object sender, EventArgs e)
{
}
private void label3_Click(object sender, EventArgs e)
{
}
}
}

OriginalL'auteur James Archer | 2013-03-27