在c#程序中使用cellcontentclick事件来激活链接

本文关键字:事件 激活 链接 cellcontentclick 程序 | 更新日期: 2023-09-27 18:06:04

我有一个程序,使用一个datagridview与7列在它。其中一列是将从指定位置加载文件的超链接。我使用'cellcontentclick'事件打开文件。我的问题是,当我单击行中任何其他单元格时,它仍然会执行cellcontentclick。我如何使它只有当特定的列将在单击时执行?

        private void dataGridView1_CellContentClick(object sender, DataGridViewCellEventArgs e)
    {
        try
        {
            string sourcePath = @"SPECIFIED PATH";
            Process.Start(sourcePath + dataGridView1.Rows[e.RowIndex].Cells[5].Value);
        }
        catch (SqlException e)
        {
            MessageBox.Show("Error occured: " + e);
        }
    }

在c#程序中使用cellcontentclick事件来激活链接

检查内部事件处理程序仅为您正在寻找的列。其中一个参数(e?)有列info。

明白了!我只需要输入if语句并指定列。谢谢,evgenyl。

        if (e.ColumnIndex == 5 && e.RowIndex >= 0)
        {
            try
            {
                string sourcePath = @"PATH";
                Process.Start(sourcePath + dataGridView1.Rows[e.RowIndex].Cells[5].Value);
            }
            catch (SqlException a)
            {
                MessageBox.Show("Error occured: " + a);
            }
        }