c#怎么把datagridview一行的值分别放在几个不同的TextBox中

 我来答
zhouxiang_1216
推荐于2016-05-31 · TA获得超过2591个赞
知道大有可为答主
回答量:1286
采纳率:33%
帮助的人:1368万
展开全部
1、拖一个DataGridView和几个TextBox控件到界面上,这里我都用默认名称,你可以自行修改控件名称。首先是设置DataGridView控件的选中方式为选中整行:
this.dataGridView1.SelectionMode=DataGridViewSelectionMode.FullRowSelect;
2、然后添加DataGridView控件的CellClick事件,在此事件中将值显示到TextBox中,当你点击不同的行的时候数据会自行变化:
private void dataGridView1_CellClick(object sender,DataGridViewCellEventArgs e)
{
if(this.dataGridView1.SelectedRows!=null) //当选中了行的时候才显示数据
 {
  //将被点击的行的第一列的数据显示到第一个TextBox中
this.textBox1.Text=this.dataGridView1.SelectedRows[0].Cells[0].Value.ToString();
  //将被点击的行的第二列数据显示到第二个TextBox中,后面以此类推
  this.textBox2.Text=this.dataGridView1.SelectedRows[0].Cells[1].Value.ToString();
}
}
希望对你有帮助,还有疑问请追问或是百度Hi上留言都可以
yqsky3964
2013-06-10 · TA获得超过1875个赞
知道小有建树答主
回答量:1184
采纳率:0%
帮助的人:662万
展开全部
给TextBox赋值你会吧!
现在我们来取datagridview的值,
第一步你要得到你选中了哪一行:
int rowsIndex = dataGridView1.SelectedRows.index;

得到了行号就好办了,直接赋值:
textbox1.text = dataGridView1.rows[rowsindex].cells[0].value.tostring();
textbox2.text = dataGridView1.rows[rowsindex].cells[1].value.tostring();
textbox3.text = dataGridView1.rows[rowsindex].cells[2].value.tostring();
textbox4.text = dataGridView1.rows[rowsindex].cells[3].value.tostring();
textbox5.text = dataGridView1.rows[rowsindex].cells[4].value.tostring();
如果你知道是第几行rowsindex直接换成行号就可以了!望采纳!!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友82306a1
2013-06-10 · TA获得超过199个赞
知道小有建树答主
回答量:241
采纳率:0%
帮助的人:247万
展开全部
取得当前选中行,然后分别给TextBox赋值。
追问
能给段代码看看么?  想看下代码~
追答
设置DataGridview 的事件,这里用单元格点击事件;
若有需要可以用其他事件:http://msdn.microsoft.com/zh-cn/library/system.windows.forms.datagridview_events(v=vs.80).aspx

private void
dataGridView2_CellClick(object sender,
DataGridViewCellEventArgs e)
{
pnlBottom.Enabled = true;

//获得当前选中的行
int rowindex = e.RowIndex;
string value0="";
string value1 = "";
string value2 = "";

try
{

//获得当前行的第一列的值
value1= dgvHome.Rows[rowindex].Cells[1].Value.ToString();

//获得当前行的第0列的值
value0 = dgvHome.Rows[rowindex].Cells[0].Value.ToString();

//获得当前行的第二列的值
value2 =
dgvHome.Rows[rowindex].Cells[2].Value.ToString().Trim();

MessageBox.show("第0列的值:{0};第一列的值:{1};第二列的值:{2}",value0,value1,value2);
}

catch (Exception exc) { }

}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式