web-dev-qa-db-ja.com

c#複数行のtextBoxを行ごとに読み書きする方法は?

私はボタンを押したときに複数行のtextBoxから行を読み取る機能を持つ簡単なプログラムを持っています

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();
}

button1をクリックすると、コードは次のようになります。

textBox2=text1[1];

[1]最初の行を意味するワンクリックで自動的に行うにはどうすればよいですか?または、1つ目の行をクリックしてtextBox2に、2番目の行をクリックしてtextBox3 ..... ect ..

plz私はコードが欲しいと私はそれを置くべき場所^ _ ^

またはそれを行う別の方法がある場合

15
Manar Al Saleh

プロパティ Lines があります

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

または、テキストボックスを一時的な配列に並べてループします(もちろん、textBox1に存在する行数をチェックします)

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

簡単なプログラミングで、C#の複数行のtextBoxから1行ずつ読み取りおよび書き込みを行います。

1行ずつ書き込みます。

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

1行ずつ読み取ります。

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

次のスニペットを使用して、複数行のテキストボックスからカンマ区切りおよび改行区切りの値を読み取ることができます-

 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
            }
         }

これがお役に立てば幸いです。

1
ShaileshDev