У меня есть winform в С#, который содержит datagridview, отображающий таблицу из моей базы данных. Один из столбцов является типом данных гиперссылки. Но ссылка не отображается корректно. например, http://google.com отображается как #http://google.com# в столбце. Возникает вопрос: как удалить # из столбца гиперссылок? Как сделать ссылку доступной? Я имею в виду, что всякий раз, когда я нажимаю, ссылка открывается в браузере. Вот пример pic
Возникли трудности с гиперссылкой DataGridView при доступе к С# и ms
comment
Есть ли символы фунта в базе данных? Должны ли они быть в базе данных? Возможно, проблема в коде, который неправильно поместил фунты в базу данных.
- person jdweng   schedule 31.10.2019
comment
Проверьте свою базу данных, как хранятся ссылки. Что касается второй части вашего вопроса, пожалуйста, проверьте Как обрабатывать щелчок событие DataGridViewLinkColumn, удачи.
- person   schedule 31.10.2019
comment
Я проверил базу данных, и ссылка в порядке, там нет знака #. Я предполагаю, что у него проблема с типом данных, потому что это гиперссылка на доступ Microsoft.
- person Cyb Fyr   schedule 31.10.2019
Ответы (1)
Вам нужно установить столбец ссылок отдельно.
Я пишу пример рабочего кода, и вы можете посмотреть.
Код:
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());
}
}
person
Jack J Jun - MSFT
schedule
01.11.2019
Спасибо за ваш ответ. Я действительно, наконец, понял это. Фактическая проблема в базе данных, и она исправлена.
- person Cyb Fyr; 06.11.2019