我有一个DataGridView,手动添加了列,例如:
DataGridViewLinkColumn col = new DataGridViewLinkColumn() { HeaderText = "", DataPropertyName = "PropValue", ReadOnly = true };
this.dataGridResults.Columns.Add(col);
数据源是一个存储过程,它返回一个包含“PropValue”和“PropText”等列表。
我的问题是,此DataGridViewLinkColumn必须显示“PropText”中的文本,并将其值绑定到“PropValue”。但是,似乎DataPropertyName不是那么灵活,它只绑定到从datsource返回的一种数据类型。
如果问题解释不明确,请告诉我。
想法?
提前谢谢
答案 0 :(得分:0)
您可以使用:
DataGridViewLinkColumn links = new DataGridViewLinkColumn();
links.HeaderText = "Hello";
links.UseColumnTextForLinkValue = true;
links.Text="http://microsoft.com";
links.ActiveLinkColor = Color.White;
links.LinkBehavior = LinkBehavior.SystemDefault;
links.LinkColor = Color.Blue;
links.TrackVisitedState = true;
links.VisitedLinkColor = Color.YellowGreen;
dataGridView.Columns.Add(links);
我从这个链接得到了它:
How to add DataGridViewLinkColumn property to dynamically generated columns in DataGridView?
答案 1 :(得分:0)
我最终使用了两个单独的列,其中一个不可见,包含我需要的另一个值。将数据集中的两列都绑定到同一个datagridview列中是不可能的。