如何将datagridview列设置为linktype

时间:2013-10-17 09:47:52

标签: c# datagridview

我正在获取数据并存储在datatable中以在datatgridview中显示它,如何从visitdate创建数据表的第二列link type? 像这样的东西

DataGridViewLinkColumn linkcol = new DataGridViewLinkColumn();
this.dataGridViewVisits.Columns[1].DefaultCellStyle = linkcol;

下面是我在datagridview中显示数据的代码

cmd1 = new OleDbCommand("Select VisitNo,VisitDate,remark from Patient_Visit_Details WHERE Patient_ID=" + pid, con);
            dt = new DataTable();
            adp1 = new OleDbDataAdapter(cmd1);
            adp1.Fill(dt);
            this.dataGridViewVisits.DataSource = dt;
            DataGridViewLinkColumn linkcol = new DataGridViewLinkColumn();

4 个答案:

答案 0 :(得分:4)

在将DataTable(dt)设置为DataGridView的数据源之后添加此代码。

foreach (DataGridViewRow row in dataGridViewVisits.Rows)
            {
                DataGridViewLinkCell linkCell = new DataGridViewLinkCell();
                linkCell.Value = row.Cells[1].Value;
                row.Cells[1] = linkCell;
            }

它肯定会起作用.. :)

答案 1 :(得分:0)

处理datagridView的DataBindingComplete事件,如下所示。

  private void dataGridView1_DataBindingComplete(object sender, DataGridViewBindingCompleteEventArgs e)
        {
            foreach (DataGridViewRow r in dataGridView1.Rows)
            {
                r.Cells[1] = new DataGridViewLinkCell();
            }
        }

答案 2 :(得分:0)

对于Vb.Net极客...

For Each typeCell As DataGridViewRow In FlxInvTransaction.Rows
    Dim linkCell As New DataGridViewLinkCell
    linkCell.Value = typeCell.Cells(2).Value
    typeCell.Cells(2) = linkCell
Next

答案 3 :(得分:-1)

<强>您好,

您只需使用智能导航在GridView控件中创建HyperLink列,并设置如下所示的值......

 <asp:HyperLinkField DataNavigateUrlFields="VisitDate"
 DataTextField="VisitDate"
 DataNavigateUrlFormatString="Default3.aspx?VisitNo={0}&visitDt={1}" />

谢谢, Vishal Patel