DataPropertyName DataGridViewLinkColumn来自数据源中的两列

时间:2012-10-02 17:13:46

标签: c# .net winforms datagridview datasource

我有一个DataGridView,手动添加了列,例如:

DataGridViewLinkColumn col = new DataGridViewLinkColumn() { HeaderText = "", DataPropertyName = "PropValue", ReadOnly = true };
        this.dataGridResults.Columns.Add(col);

数据源是一个存储过程,它返回一个包含“PropValue”和“PropText”等列表。

我的问题是,此DataGridViewLinkColumn必须显示“PropText”中的文本,并将其值绑定到“PropValue”。但是,似乎DataPropertyName不是那么灵活,它只绑定到从datsource返回的一种数据类型。

如果问题解释不明确,请告诉我。

想法?

提前谢谢

2 个答案:

答案 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列中是不可能的。