我是在winforms中拖了1个dataGirdView 然后自定义了1个DataTable dt=new DataTable();dt.column.add("图书编号",typeof(string));
dt.column.add("图书名称",typeof(string));
.
.
.但是我现在想把最后一列做成象 asp.net项目里的HyperLinker列一样 是1个"查看封面" 标签 然后我点"查看封面" 就跳出1个新的窗口 我要在这个窗口里显示该行图书的封面图片 请问该怎么实现问题的关键是: 1.如何把这个列加上去 是在dt里+ 还是在dataGirdView里+ 怎么+上去呢???
2. 如何实现点击事件 代码怎么写?
3.如何获取点中行的图书编号 也就是说怎么知道他点击的是第几行的"查看封面"?因为我要根据图书的编号去调图片的答对1个问题给33.333333333333333333...分 @^-^@ 请前辈门赐教
dt.column.add("图书名称",typeof(string));
.
.
.但是我现在想把最后一列做成象 asp.net项目里的HyperLinker列一样 是1个"查看封面" 标签 然后我点"查看封面" 就跳出1个新的窗口 我要在这个窗口里显示该行图书的封面图片 请问该怎么实现问题的关键是: 1.如何把这个列加上去 是在dt里+ 还是在dataGirdView里+ 怎么+上去呢???
2. 如何实现点击事件 代码怎么写?
3.如何获取点中行的图书编号 也就是说怎么知道他点击的是第几行的"查看封面"?因为我要根据图书的编号去调图片的答对1个问题给33.333333333333333333...分 @^-^@ 请前辈门赐教
设置它的Text属性为:"查看封面",并且UseColumnTextForButtonValue属性为True.2.通过CellContentClick事件:private void dataGridView1_CellContentClick(object sender, DataGridViewCellEventArgs e)
{
//判断单击是否为按钮列
if (e.ColumnIndex == 1)
{
//取得当前行第0个单元格的值
MessageBox.Show(dataGridView1.CurrentRow.Cells[0].Value.ToString());
}
}3.看上面示例代码:dataGridView1.CurrentRow.Cells[0].Value//假设图书编号在第一列
==
都可以,在界面,点击DataGridView的智能标记--添加列--选择类型为DataGridViewLinkColumn即可
3.如何获取点中行的图书编号 也就是说怎么知道他点击的是第几行的"查看封面"?因为我要根据图书的编号去调图片的 private void dataGridView1_CellContentClick(object sender, DataGridViewCellEventArgs e)
{
if (e.ColumnIndex == 0 && e.RowIndex != -1 && !dataGridView1.Rows[e.RowIndex].IsNewRow)
{
string id= dataGridView1.Rows[e.RowIndex].Cells["id"].Value.ToString();
FrmAddModify frmAddModify = new FrmAddModify(id);//将id作为参数传入
frmAddModify.ShowDialog(this);
}
}