我想在winform datagridview一个列中加入超链接,
点击链接实现向ie里下载pdf文件一样的效果,
急啊,明天task必须完成!!!!!!!!!!!好像挺不容易的,
谁能帮我啊???最好有demo code啊,不然不容易懂啊
谢谢啦!!!!

解决方案 »

  1.   

    use DataGridViewLinkColumn, see
    http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=977920&SiteID=1
      

  2.   

    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
            Dim hl As New DataGridViewLinkColumn
            With hl
                .Width = 150
                .HeaderText = "Link"
            End With
            DataGridView1.Columns.Add(hl)
            DataGridView1.Rows.Add(New Object() {"http://www.microsoft.com"})
        End Sub
        Private Sub DataGridView1_CellClick(ByVal sender As Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) Handles DataGridView1.CellClick
            If e.ColumnIndex = 0 Then
                Process.Start(DataGridView1.Item(e.ColumnIndex, e.RowIndex).Value.ToString)
            End If
        End Sub
      

  3.   

    private void addlink()
            {
                 
                DataGridViewLinkColumn link = new DataGridViewLinkColumn();
                link.HeaderText = "link";
                link.Name = "link";
                
                this.dataGridView1.Columns.Add(link );
                
                this.dataGridView1.Rows.Add(new object[]{"http://www.baidu.com"});
               
                this.dataGridView1.CellClick += new DataGridViewCellEventHandler(dataGridView1_CellClick);
                 
            }        void dataGridView1_CellClick(object sender, DataGridViewCellEventArgs e)
            {
                System.Diagnostics.Process.Start(this.dataGridView1[e.ColumnIndex, e.RowIndex].Value.ToString());
                //throw new Exception("The method or operation is not implemented.");
            }
      

  4.   

    直接用DataGridView控件中增加列,选择列的类型为DataGridViewLinkColumn就可以了吧
      

  5.   

    呵呵.模板里里加个linkbutton ,在他的datarowbind事件中 
    {
       linkbutton.atrribute.add(.....)
    }