我有一个但很烦人的问题:
我创建了一个datagridview并将其绑定到数据源。 然后,现在我想添加一个列,该列将显示用户单击的链接。 为了做到这一点,我添加了一个datagridviewlinkcolumn。对于datagrid的每一行,我将该列中单元格的值设置为我想要显示的文本。但它没有显示任何内容所有datagridlinkcolumn都填充了“空白文本”。
这是我的代码:
DataGridViewLinkColumn dgvColDeletion = new DataGridViewLinkColumn();
dgvColDeletion.Name = "Deletion";
dgvColDeletion.HeaderText = "";
dgvColDeletion.ReadOnly = false;
dgvTrainings.Columns.Add(dgvColDeletion);
foreach (DataGridViewRow row in dgvTrainings.Rows)
{
row.Cells["Deletion"].Value = "Delete";
}
dgvColDeletion.Update();
dgvTrainings.Update();
我也试过直接设置linklabels或datagridviwlinkcells,但问题仍然存在。
我无法理解为什么这不起作用。
非常感谢任何帮助,谢谢。
答案 0 :(得分:1)
要为每个单元格显示相同的链接文本,请将UseColumnTextForLinkValue
属性设置为true,并将Text
属性设置为所需的链接文本。
DataGridViewLinkColumn dgvColDeletion = new DataGridViewLinkColumn();
dgvColDeletion.UseColumnTextForLinkValue = true;
dgvColDeletion.Text = "Delete";
答案 1 :(得分:0)
试试这个。我希望这会对你有所帮助。
DataGridViewLinkColumn dgvColDeletion = new DataGridViewLinkColumn();
dgvColDeletion.UseColumnTextForLinkValue = true;<br/>
dgvColDeletion.Text = "Delete";<br/>
dgvColDeletion.ActiveLinkColor = Color.White;<br/>
dgvColDeletion.LinkBehavior = LinkBehavior.SystemDefault;<br/>
dgvColDeletion.LinkColor = Color.Blue;<br/>
dgvColDeletion.TrackVisitedState = true;<br/>
dgvColDeletion.VisitedLinkColor = Color.YellowGreen;<br/>
dgvColDeletion.Name = "Delete";<br/>
dgvColDeletion.HeaderText = "Delete";<br/>
if (grid_shared.Columns.Contains("Delete") == false)<br/>
{<br/>
dgvColDeletion.Columns.Add(lnkDelete);<br/>
dgvColDeletion.Columns["Delete"].Width = 40;<br/>
}<br/>
快乐编码.. :)