Edit this page

Not auto-generate a column for a specific property

As you know, if AutoGenerateColumns="True" (which is by default), RadGridView creates a column for each property of the underlying business object. This article shows how to not auto generate a column for a specific property.

There are two ways to accomplish this:

  1. Using DataAnnotations.

Apllying this approach you need to add a reference to the System.ComponentModel.DataAnnotations assembly and mark your property with [Display(AutoGenerateField = false)] attribute.

Example 1: Using DataAnnotations.

private ObservableCollection<Player> players;

[Display(AutoGenerateField = false)]
public ObservableCollection<Player> Players
{
    get
    {
        if (null == this.players)
        {
            this.players = new ObservableCollection<Player>();
        }
        return this.players;
    }
}

Now, RadGridView will not generate a column for the Players property.
  1. Canceling AutoGeneratingColumn event for a particular column.

Example 2: Canceling adding a column in AutoGeneratingColumn event

private void clubsGrid_AutoGeneratingColumn(object sender, GridViewAutoGeneratingColumnEventArgs e)
{
    if (e.Column.UniqueName == "Players")
    {
        e.Cancel = true;
    }
}

See Also