DataGridView在C#中选择数据并将其显示给一个文本框
我正在处理一个Windows窗体应用程序,我已经使datagridview显示我的数据,但我也想从Datagridview中选择一些特定的列,并将它们显示为只有一个文本框。DataGridView在C#中选择数据并将其显示给一个文本框
我已经尝试过,但它只获取名为“SEIKEN_NO”的文本框的最后一列,但我想要在一个文本框中显示多个列值。
private void dataGridView1_CellMouseClick(object sender, DataGridViewCellMouseEventArgs e)
{
// to set oem no, fic_no and seiken_no to textbox named particular1Txt.
dataGridView1.Refresh();
try
{
if (RB1.Checked == true)
{
int i;
i = dataGridView1.SelectedCells[0].RowIndex;
Particular1Txt.Text = dataGridView1.Rows[i].Cells["FIC_No"].Value.ToString();
Particular1Txt.Text = dataGridView1.Rows[i].Cells["OEM_No"].Value.ToString();
Particular1Txt.Text = dataGridView1.Rows[i].Cells["Seiken_NO"].Value.ToString();
}
else if (RB2.Checked == true)
{
int i;
i = dataGridView1.SelectedCells[0].RowIndex;
Particular2Txt.Text = dataGridView1.Rows[i].Cells["FIC_No"].Value.ToString();
Particular2Txt.Text = dataGridView1.Rows[i].Cells["OEM_No"].Value.ToString();
Particular2Txt.Text = dataGridView1.Rows[i].Cells["Seiken_NO"].Value.ToString();
}
富勒每次数据分配到TextBox行:
Particular1Txt.Text = dataGridView1.Rows[i].Cells["FIC_No"].Value.ToString();
变化:
Particular1Txt.Text += dataGridView1.Rows[i].Cells["FIC_No"].Value.ToString();
注意+=
否则你是overw riting文本框
的含量值级联格式,您可以:使用的String.Format()
+= " " + dataGridView1.Rows[i].Cells["FIC_No"].Value.ToString(); // very basic way to do it
另一种方式例如
Particular1Txt.Text=String.Format({0} {1} {2}), dataGridView1.Rows[i].Cells["FIC_No"].Value.ToString(),dataGridView1.Rows[i].Cells["OEM_No"].Value.ToString(),dataGridView1.Rows[i].Cells["Seiken_No"].Value.ToString();
您还可以使用:字符串。加入()与字符串数组,或StringBuilder类,
希望这有助于你
非常感谢你的工作,但是如何在文本框中的每个列值之间创建空间?你能告诉PLZ吗? –
如果这解决了您的问题,请将答案标记为正确的答案,而不是您 – Ferus7
private void dataGridView1_CellMouseClick(object sender, DataGridViewCellMouseEventArgs e)
{
// to set oem no, fic_no and seiken_no to textbox named particular1Txt.
dataGridView1.Refresh();
try
{
if (RB1.Checked == true)
{
int i;
i = dataGridView1.SelectedCells[0].RowIndex;
Particular1Txt.Text = dataGridView1.Rows[i].Cells["FIC_No"].Value.ToString()+" "+ dataGridView1.Rows[i].Cells["OEM_No"].Value.ToString()+" "+dataGridView1.Rows[i].Cells["Seiken_NO"].Value.ToString();
}
else if (RB2.Checked == true)
{
int i;
i = dataGridView1.SelectedCells[0].RowIndex;
Particular1Txt.Text = dataGridView1.Rows[i].Cells["FIC_No"].Value.ToString()+" "+ dataGridView1.Rows[i].Cells["OEM_No"].Value.ToString()+" "+dataGridView1.Rows[i].Cells["Seiken_NO"].Value.ToString();
}
}
}
甲'TextBox'通常应该显示的单个字段。但是,如果出于任何原因想要在其中显示多个字段,只需使用'''等分隔符连接字符串,并将结果显示在“TextBox”中。 –
它看起来像你问[一个非常类似的问题(https://stackoverflow.com/q/46539704/472495)几个星期前,但奇怪的是,你似乎没有回信了谁帮助你的人。如果注意到您努力回复提供援助的人,您将更有可能在此获得帮助。 – halfer