根据行数据显示/隐藏repositoryitemhyperlinkedit

时间:2013-07-18 14:00:41

标签: c# winforms devexpress xtragrid

我在winform中使用XtraGridView控件。现在我添加了一个RepositoryItemHyperLinkEdit。但我想根据行数据显示/隐藏每个链接。

我怎样才能做到这一点?

感谢您的帮助..

我尝试了下一个代码,但它没有用,单元格不是空的。 (“显示链接”部分没问题,但String.Empty不起作用)

private void xgvGrid_CustomColumnDisplayText(object sender, DevExpress.XtraGrid.Views.Base.CustomColumnDisplayTextEventArgs e)
        {
            if (e.Column == gcControlField)
            {
                if (xgvGrid.GetFocusedRowCellValue("ControlField") != null)
                {
                    if (xgvGrid.GetFocusedRowCellValue("ControlField").ToString() == "LINK")
                        e.DisplayText = "Show link";
                    else
                        e.DisplayText = string.Empty;
                }
            }
        } 

1 个答案:

答案 0 :(得分:0)

您可以在事件GridView.CustomColumnDisplayText中添加检查。

e.g。每行都绑定到Person实例

private void gridView1_CustomColumnDisplayText(object sender, DevExpress.XtraGrid.Views.Base.CustomColumnDisplayTextEventArgs e)
{
    // gcLink is your column using repositoryitemhyperlinkedit
    if (e.Column == gcLink)
    {
        var person = gridView1.GetRow(e.RowHandle) as Person;
        if (person != null)
        {
            // Logic to show/hide the link based on other field
            if (person.FirstName == "John")
                e.DisplayText = string.Empty;
            else
                e.DisplayText = person.Link;
        }
    }
}