2012-10-18 11 views
12

Ho un semplice programma ha una funzione per leggere una riga da textBox multilinea Quando si preme un tasto quello che ho fatto per farlo è di questo codice:C# Come leggere e scrivere da testo multilinea riga per riga?

TextReader read = new System.IO.StringReader(textBox1.Text); 
int rows = 100; 

string[] text1 = new string[rows]; 
for (int r = 1; r < rows; r++) 
{ 
    text1[r] = read.ReadLine(); 
} 

così quando Fare clic su Button1 che il codice sarà così:

textBox2=text1[1]; 

[1] significa la prima linea Come posso farlo automaticamente con un clic? o con un clic la prima linea a textBox2 il secondo per TextBox3 ..... ect ..

plz voglio il codice e dove dovrei metterla^_^

o se v'è un altro modo per farlo

risposta

18

la proprietà Lines è lì per voi

if(textBox1.Lines.Length > 0) 
    textBox2.Text=textBox1.Lines[0]; 

o, mettere le caselle di testo ordinati in un array temporaneo e anello su di loro (ovviamente controlla il numero di righe presenti in textBox 1)

TextBox[] text = new TextBox[] {textBox2, textBox3, textBox4}; 
if(textBox.Lines.Length >= 3) 
{ 
    for(int x = 0; x < 3; x++) 
     text[x] = textBox1.Lines[x]; 
} 
+0

... e TextBox.Lines è una string [], quindi è un rimontaggio esatto per la variabile text1 nel post originale. – Polyfun

+0

grazie mille non posso votare per te conosci i ruoli –

+0

un desiderio di fare un ciclo per [1] [2] [3] stringa come posso farlo –

1

È possibile utilizzare seguente frammento di codice per la lettura separati da virgola e ritorno a capo separato i valori da testo multilinea -

if (!string.IsNullOrEmpty(Convert.ToString(txtBoxId.Text))) 
     { 
      string IdOrder = Convert.ToString(txtBoxId.Text.Trim()); 

      //replacing "enter" i.e. "\n" by "," 
      string temp = IdOrder.Replace("\r\n", ",");    

      string[] ArrIdOrders = Regex.Split(temp, ","); 

      for (int i = 0; i < ArrIdOrders.Length; i++) 
      { 
       //your code 
      } 
     } 

Spero che questo avrebbe aiutato.

6

semplice programmazione leggere e scrivere un uno per uno dalla linea textBox multilinea in C#

write line one by one: 

     textbox1.AppendText("11111111+"); 
     textbox1.AppendText("\r\n222222222"); 
     textbox1.AppendText("\r\n333333333"); 
     textbox1.AppendText("\r\n444444444"); 
     textbox1.AppendText("\r\n555555555"); 

    read line one by one: 

     for (int i = 0; i < textbox1.Lines.Length; i++) 
     { 
      textbox2.Text += textbox1.Lines[i] + "\r\n"; 
     } 

     Enjoy friend 
Problemi correlati