text框项目复制到不同的text框
本文关键字:text 复制 项目 | 更新日期: 2023-09-27 17:59:52
我想在我的一个项目中执行一项任务
我想把一个文本框中的项目转移到不同的文本框中。我可以通过这个实现
string[] values = textBox1.Text.Split('#');
textBox2.Text = values[0];
textBox3.Text = values[1];
textBox4.Text = values[2];
textBox5.Text = values[3];
textBox6.Text = values[4];
我想要的是在5个不同的文本框中复制5个项目。必须从原始文本框中删除这5项
或
**假设我在一个名为textBox1的文本框中有10个项目,由#分隔。
例如:a#b#c#d#e#f#g#h#i#j
现在点击一个名为button1 的按钮
发生以下事件
a在textBox2/b在textBox3/c在textBox4/d在textBox5/e在textBox6 中
-现在,当我再次点击按钮1时,
我想要留在文本框1中的5个项目必须像这个
f在textBox2/g在textBox3/h在textBox4/i在textBox5/j在textBox6
我将开始编写一个方法,尝试拆分字符串,并使用一个值来限制要返回的拆分字符串的数量。相同的方法应该从输入字符串中删除已拆分的部分,并返回带有已拆分字符串的数组和原始字符串的其余部分。
string[] SplitWithLimit(ref string test, int limit)
{
int count=0;
int pos=-1;
// Try to find the position of the # at the limit count
while((pos = test.IndexOf('#', pos+1)) != -1)
{
count++;
if(count == limit)
break;
}
string toSplit;
if(pos != -1)
{
// Take the left part of the string to be splitted
// till the position of the char at limit boundary
toSplit = test.Substring(0, pos);
test = test.Substring(pos+1);
}
else
{
// If there are less # than required, take all the string
toSplit = test;
test = "";
}
// Now split only the required part
string[] parts = toSplit.Split(new char[] {'#'}, StringSplitOptions.RemoveEmptyEntries);
return parts;
}
现在,只需要处理此操作的结果,将原始文本框设置为剩余文本框,并将接收文本框设置成拆分阵列
TextBox2.Text =string.Empty;
TextBox3.Text =string.Empty;
TextBox4.Text =string.Empty;
TextBox5.Text =string.Empty;
TextBox6.Text =string.Empty;
string test = TextBox1.Text; //"a#b#c#d#e#f#g#h#j"
string[] parts = SplitWithLimit(ref test, 5);
if(parts.Length > 0)
TextBox2.Text = parts[0];
if(parts.Length > 1)
TextBox3.Text = parts[1];
if(parts.Length > 2)
TextBox4.Text = parts[2];
if(parts.Length > 3)
TextBox5.Text = parts[3];
if(parts.Length > 4)
TextBox6.Text = parts[4];
TextBox1.Text = test;
试试这个,一旦用户点击按钮,以前的值将被自动删除,并被新的取代
int noOfTimesClicked=0;
private void FillTextBoxes()
{
string[] values = textBox1.Text.Split('#');
textBox2.Text = values[noOfTimesClicked] != null ? values[noOfTimesClicked] : "";
textBox3.Text = values[(noOfTimesClicked) + 1] != null ? values[(noOfTimesClicked) + 1] : "";
textBox4.Text = values[(noOfTimesClicked) + 2] != null ? values[(noOfTimesClicked) + 2] : "";
textBox5.Text = values[(noOfTimesClicked) + 3] != null ? values[(noOfTimesClicked) + 3] : "";
textBox6.Text = values[(noOfTimesClicked) + 4] != null ? values[(noOfTimesClicked) + 4]:"";
noOfTimesClicked = noOfTimesClicked + 5;
}
希望这能帮助您:)
要从Origin TextBox
中删除,请使用:(仅示例)
TextBox1.Text = TextBox1.Text.Substring(10);
如果你确定有5个项目:
private void button_Click(object sender, EventArgs e)
{
string[] values = textBox1.Text.Split('#');
if (values.Length >= 5)
{
textBox2.Text = values[0];
textBox3.Text = values[1];
textBox4.Text = values[2];
textBox5.Text = values[3];
textBox6.Text = values[4];
//change the destination
if (values.Length == 5)
textBox1.Text = textBox1.Text.Substring(9);
else if (values.Length > 5)
textBox1.Text = textBox1.Text.Substring(10);
}
}