[英]c# datagridview with a column type hyperlink after db read in winform
我有這種情況:
查詢后,我在DataSet中有此表:
Name | Module | Date | Approvation
xx | xxx | xxx | xxxxxxxx
yy | yyy | yyy | yyyyyyyyy
DataTable dt = new DataTable();
// dgvApprovazione is a datagridview
dgvApprovazione.DataSource = dt
現在在這種情況下,我在4列中鍵入text(string):Name,Module,Date,Approvation ...
我希望“模塊”列是文件的鏈接 ...然后“ xxx”是鏈接,“ yyy”是鏈接...等。
我已經看過DataGridViewLinkColumn,但我不知道這是否是一個好方法以及如何設置..
DataGridViewLinkColumn
是必經之路,實現它應該很簡單:
this.dataGridView1.CellContentClick += DataGridView1_CellContentClick;
this.dataGridView1.DataBindingComplete += DataGridView1_DataBindingComplete;
private void DataGridView1_CellContentClick(object sender, DataGridViewCellEventArgs e)
{
if (this.dataGridView1.Rows[e.RowIndex].Cells[e.ColumnIndex] is DataGridViewLinkCell)
{
System.Diagnostics.Process.Start(this.dataGridView1.Rows[e.RowIndex].Cells[e.ColumnIndex].Value as string);
}
}
private void DataGridView1_DataBindingComplete(object sender, DataGridViewBindingCompleteEventArgs e)
{
foreach (DataGridViewRow row in this.dataGridView1.Rows)
{
row.Cells["Module"] = new DataGridViewLinkCell();
}
}
該答案的主要來源來自此SO答案 ,減去條件檢查。 其他答案也有參考價值。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.