我在c#中具有winform,其中包含显示数据库中的表的datagridview。列之一是超链接数据类型。但是该链接似乎无法正确显示。例如http://google.com在列上显示为#http://google.com#。问题是:如何从超链接列中删除#?如何使链接可访问?我的意思是,每当我单击时,链接就会在浏览器中打开。这是示例pic
您需要单独设置链接列。
我写了一个工作代码示例,您可以看一下。
代码:
private void Form1_Load(object sender, EventArgs e)
{
DataGridViewLinkColumn col1 = new DataGridViewLinkColumn();
dataGridView1.Columns.Add(col1);
dataGridView1.Columns[0].Name = "Links";
DataGridViewRow dgvr = new DataGridViewRow();
dgvr.CreateCells(dataGridView1);
DataGridViewCell linkCell = new DataGridViewLinkCell();
linkCell.Value = @"http:\\www.google.com";
dgvr.Cells[0] = linkCell;
dataGridView1.Rows.Add(dgvr);
}
private void dataGridView1_CellContentClick(object sender, DataGridViewCellEventArgs e)
{
if (dataGridView1.Columns[e.ColumnIndex] is DataGridViewLinkColumn && !(e.RowIndex == -1))
{
Process.Start(dataGridView1.Rows[e.RowIndex].Cells[e.ColumnIndex].Value.ToString());
}
}