gpt4 book ai didi

c# - 遍历数据中继器中所有行的最佳方法?

转载 作者:太空宇宙 更新时间:2023-11-03 12:34:00 26 4
gpt4 key购买 nike

private void exam_Load(object sender, EventArgs e)
{
GetCount();

MySqlConnection con = new MySqlConnection("server = localhost; user id = root; password =; database = dbtest1;");
MySqlCommand cmd = new MySqlCommand("SELECT question, question_no, choice1, choice2, choice3, choice4 from quiz_tions where quiz_id = '" + lid + "' ORDER BY RAND() LIMIT " + count + ";", con);
MySqlDataAdapter sda = new MySqlDataAdapter(cmd);
DataTable dt = new DataTable();
sda.Fill(dt);

label5.DataBindings.Add("Text", dt, "question");
label6.DataBindings.Add("Text", dt, "question_no");
rb1.DataBindings.Add("Text", dt, "choice1");
rb2.DataBindings.Add("Text", dt, "choice2");
rb3.DataBindings.Add("Text", dt, "choice3");
rb4.DataBindings.Add("Text", dt, "choice4");
dataRepeater1.DataSource = dt;

LoadData();


label1.Text = qtitle;
label3.Text = qtype;
}

我的表单上有一个 DataRepeater 控件,它是使用上面的代码填充的。每次执行这段代码。 . .

private void button3_Click(object sender, EventArgs e)
{
foreach (DataRepeaterItem c in dataRepeater1.Controls)
{
ss += ((Label)c.Controls["label5"]).Text + "\n";
}
MessageBox.Show(ss);
ss = "";
}

当我在单击按钮之前单击不同的行时(有时是 3 行,有时是 4 行),它会给我不同的结果,而且它并不总是正确的,因为当我执行时,我的 DataRepeater 控件上有 5 行那。为什么会这样?遍历 DataRepeater 行的正确方法是什么?

附言另一个与我的帖子无关的问题(可能)是每当我在 DataRepeater 上向下/向上滚动时,有时它会自动检查列表中的随机 RadioButton。这个控件有什么问题?

最佳答案

如果您使用 TextBox 多行,您应该使用 \r\n 而不是 \n

Windows text boxes need CRLF as line terminators, not just LF.

你可以使用\r\n

 ss += ((Label)c.Controls["label5"]).Text + "\r\n";

System.Environment.NewLine

ss += ((Label)c.Controls["label5"]).Text  + System.Environment.NewLine;

StringBuilder

 var sb = new StringBuiler();
foreach (DataRepeaterItem c in dataRepeater1.Controls)
{
sb.AppendLine(((Label)c.Controls["label5"]).Text);
}

ss+= sb;

关于c# - 遍历数据中继器中所有行的最佳方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41693789/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com