0

I have a Single line text box and Multiline text box, and want to include a word into the Single line text box with the words in Multiline text box per line

Like this :

Single line text: "Hello"(I have to use variables)<br>

Multiline words:

<br>
1998<br>
1999<br>
2000

Expected results:


Hello1998
Hello1999
Hello2000
Pls Help me

I use the below code, but it is not working just with the Single line text box and I have to manipulate by both text boxes:

string left = string.Format(add.Text , Environment.NewLine);
        string right = string.Format(textBox1.Text, Environment.NewLine);
        string[] leftSplit = left.Split(new[] { Environment.NewLine }, StringSplitOptions.None);
        string[] rightSplit = right.Split(new[] { Environment.NewLine }, StringSplitOptions.None);

        string output = "";
        if (leftSplit.Length == rightSplit.Length)
        {
            for (int i = 0; i < leftSplit.Length; i++)
            {
                output += leftSplit[i] + ":" + rightSplit[i] + Environment.NewLine;
            }
        }
        result.Text = output;

Could you please advise me on the right approach?

Kate Orlova
  • 3,225
  • 5
  • 11
  • 35
KnightM
  • 25
  • 1
  • 5

2 Answers2

0

TextBox.GetLineText(int) will help you:

var singlelineText = singlelineTextBox.Text;
var composedLines = new List<string>();
for (var i = 0; i < multilineineTextBox.LineCount; i++)
{
  composedLines.Add(singlelineText + multilineineTextBox.GetLineText(i));
}

result.Text = string.Join(EnvironmentNewline, composedLines);
BionicCode
  • 1
  • 4
  • 28
  • 44
0

If you have single line only one word, then no need split it into an array.

Lets consider it as a string left = "Hello";

and textbox1 contains multiline words i.e.

string right = string.Format(textBox1.Text, Environment.NewLine); // right variable contains 1998 \n 1999 \n 2000

Then you can try below approach

var concatString = right.Split(new[] { Environment.NewLine }, StringSplitOptions.None).Select(x => left + x);
string result = string.Join(Environment.NewLine , concatString);

.Net Fiddle

Output :

Hello1998
Hello1999
Hello2000
Prasad Telkikar
  • 15,207
  • 5
  • 21
  • 44