Гиперссылки в DataGridView - PullRequest
       30

Гиперссылки в DataGridView

6 голосов
/ 27 марта 2010

Я работаю над приложением C #, которое похоже на небольшую поисковую систему. Пользователь введет слово, а программа вернет файлы, содержащие это слово.

У меня есть массив путей к файлам (в виде строк), и я хочу показать эти пути как ссылки в DataGridView, чтобы при нажатии пользователем на имя файла файл открывался.

Примечание: я работаю на C # Winforms, а не ASP.net

Ответы [ 4 ]

4 голосов
/ 29 марта 2010

Я думаю, что у меня есть ответ на мой вопрос Я добавил DataGridViewLinkColumn в DataGridView Теперь следующий шаг заполнит данные в представлении данных. и имена файлов будут выглядеть как ссылки:

private void button1_Click(object sender, EventArgs e)
    {
        string[] SS = new string[3];
        SS[0] = "C:\\test1.txt";
        SS[1] = "C:\\test2.txt";
        for (int i = 0; i < SS.Length; i++)
        {
            dataGridView1.Rows.Add(SS[i]);
        }
        dataGridView1.Refresh();
    }

Последний шаг: теперь я хочу открыть файл, когда пользователь щелкнет по нему Я буду использовать событие CellContentClick, и этот код достигнет его:

private void dataGridView1_CellContentClick(object sender, DataGridViewCellEventArgs e)
    {
        string filepath= (string)dataGridView1.Rows[e.RowIndex].Cells[0].Value;
        System.Diagnostics.Process.Start(filepath);
    }
3 голосов
/ 28 марта 2010

DataGridViewLinkColumn выглядит многообещающе.

0 голосов
/ 05 июля 2012

Ссылки могут быть динамически добавлены из aspx, также используя

<asp:TemplateColumn>
 <HeaderTemplate>
 <a>Eamil Address</a>
 </HeaderTemplate>
 <ItemTemplate>
     <asp:HyperLink id="HyperLink1"
      Text='<%# DataBinder.Eval(Container.DataItem, "Professor_email") %>'
      NavigateUrl='mailto:<%# DataBinder.Eval(Container.DataItem, "Professor_email") %>'
      runat="server"/>
 </ItemTemplate>
 <EditItemTemplate>
     <asp:TextBox
      Text='<%# DataBinder.Eval(Container.DataItem, "Professor_email") %>' 
      runat="server"/>
      </EditItemTemplate>
</asp:TemplateColumn>`
0 голосов
/ 28 марта 2010
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...