GridViewColumn GridViewColumn GridViewColumn GridViewColumn Class


Represents a column that displays data.

public ref class GridViewColumn : System::Windows::DependencyObject, System::ComponentModel::INotifyPropertyChanged
[System.Windows.Localizability(System.Windows.LocalizationCategory.None, Readability=System.Windows.Readability.Unreadable)]
[System.Windows.StyleTypedProperty(Property="HeaderContainerStyle", StyleTargetType=typeof(System.Windows.Controls.GridViewColumnHeader))]
public class GridViewColumn : System.Windows.DependencyObject, System.ComponentModel.INotifyPropertyChanged
type GridViewColumn = class
    inherit DependencyObject
    interface INotifyPropertyChanged
Public Class GridViewColumn
Inherits DependencyObject
Implements INotifyPropertyChanged


The following example shows how to define GridViewColumn objects for a GridView.

<ListView ItemsSource="{Binding Source={StaticResource EmployeeData}, 
      <GridViewColumn Header="First Name"
               DisplayMemberBinding="{Binding XPath=FirstName}" />
      <GridViewColumn Header="Last Name"  
               CellTemplate="{StaticResource LastNameCellTemplate}"/>
      <GridViewColumn Header="Favorite City" 


A GridViewColumn is used by the GridView view mode to display a column of data. The ListView that implements the GridView view mode provides the data for the column. You use data binding to specify the data for the GridViewColumn.

You can use the DisplayMemberBinding to define the data to display in a column. You can also define the data as part of a DataTemplate that is specified by the CellTemplate property. If different cells have different DataTemplate objects, the CellTemplateSelector property can specify a DataTemplateSelector. The following list shows the properties mentioned here, in their order of precedence from highest to lowest:

The GridViewColumn class also contains properties that you can use to define and customize the column header for the column. The Header property can define the content of the column header. Other properties such as HeaderTemplate and HeaderContainerStyle can also specify content and style for the column header. Some of these properties are also found on other classes such as the GridViewColumnHeader class. For more information about the properties that are used to define styles and templates for column headers, and for information about the order of precedence for these properties, see GridView Column Header Styles and Templates Overview.

The GridViewColumn class implements the INotifyPropertyChanged interface. This interface provides the ability to subscribe to the events that occur when a change occurs to a property value, such as the ActualWidth property value.


GridViewColumn() GridViewColumn() GridViewColumn() GridViewColumn()

Initializes a new instance of the GridViewColumn class.


CellTemplateProperty CellTemplateProperty CellTemplateProperty CellTemplateProperty

Identifies the CellTemplate dependency property.

CellTemplateSelectorProperty CellTemplateSelectorProperty CellTemplateSelectorProperty CellTemplateSelectorProperty

Identifies the CellTemplateSelector dependency property.

HeaderContainerStyleProperty HeaderContainerStyleProperty HeaderContainerStyleProperty HeaderContainerStyleProperty

Identifies the HeaderContainerStyle dependency property.

HeaderProperty HeaderProperty HeaderProperty HeaderProperty

Identifies the Header dependency property.

HeaderStringFormatProperty HeaderStringFormatProperty HeaderStringFormatProperty HeaderStringFormatProperty

Identifies the HeaderStringFormat dependency property.

HeaderTemplateProperty HeaderTemplateProperty HeaderTemplateProperty HeaderTemplateProperty

Identifies the HeaderTemplate dependency property.

HeaderTemplateSelectorProperty HeaderTemplateSelectorProperty HeaderTemplateSelectorProperty HeaderTemplateSelectorProperty

Identifies the HeaderTemplateSelector dependency property.

WidthProperty WidthProperty WidthProperty WidthProperty

Identifies the Width dependency property.


ActualWidth ActualWidth ActualWidth ActualWidth

Gets the actual width of a GridViewColumn.

CellTemplate CellTemplate CellTemplate CellTemplate

Gets or sets the template to use to display the contents of a column cell.

CellTemplateSelector CellTemplateSelector CellTemplateSelector CellTemplateSelector

Gets or sets a DataTemplateSelector that determines the template to use to display cells in a column.

DependencyObjectType DependencyObjectType DependencyObjectType DependencyObjectType

Gets the DependencyObjectType that wraps the CLR type of this instance.

(Inherited from DependencyObject)
Dispatcher Dispatcher Dispatcher Dispatcher

Gets the Dispatcher this DispatcherObject is associated with.

(Inherited from DispatcherObject)
DisplayMemberBinding DisplayMemberBinding DisplayMemberBinding DisplayMemberBinding

Gets or sets the data item to bind to for this column.

Header Header Header Header

Gets or sets the content of the header of a GridViewColumn.

HeaderContainerStyle HeaderContainerStyle HeaderContainerStyle HeaderContainerStyle

Gets or sets the style to use for the header of the GridViewColumn.

HeaderStringFormat HeaderStringFormat HeaderStringFormat HeaderStringFormat

Gets or sets a composite string that specifies how to format the Header property if it is displayed as a string.

HeaderTemplate HeaderTemplate HeaderTemplate HeaderTemplate

Gets or sets the template to use to display the content of the column header.

HeaderTemplateSelector HeaderTemplateSelector HeaderTemplateSelector HeaderTemplateSelector

Gets or sets the DataTemplateSelector that provides logic to select the template to use to display the column header.

IsSealed IsSealed IsSealed IsSealed

Gets a value that indicates whether this instance is currently sealed (read-only).

(Inherited from DependencyObject)
Width Width Width Width

Gets or sets the width of the column.


CheckAccess() CheckAccess() CheckAccess() CheckAccess()

Determines whether the calling thread has access to this DispatcherObject.

(Inherited from DispatcherObject)
ClearValue(DependencyProperty) ClearValue(DependencyProperty) ClearValue(DependencyProperty) ClearValue(DependencyProperty)

Clears the local value of a property. The property to be cleared is specified by a DependencyProperty identifier.

(Inherited from DependencyObject)
ClearValue(DependencyPropertyKey) ClearValue(DependencyPropertyKey) ClearValue(DependencyPropertyKey) ClearValue(DependencyPropertyKey)

Clears the local value of a read-only property. The property to be cleared is specified by a DependencyPropertyKey.

(Inherited from DependencyObject)
CoerceValue(DependencyProperty) CoerceValue(DependencyProperty) CoerceValue(DependencyProperty) CoerceValue(DependencyProperty)

Coerces the value of the specified dependency property. This is accomplished by invoking any CoerceValueCallback function specified in property metadata for the dependency property as it exists on the calling DependencyObject.

(Inherited from DependencyObject)
Equals(Object) Equals(Object) Equals(Object) Equals(Object)

Determines whether a provided DependencyObject is equivalent to the current DependencyObject.

(Inherited from DependencyObject)
GetHashCode() GetHashCode() GetHashCode() GetHashCode()

Gets a hash code for this DependencyObject.

(Inherited from DependencyObject)
GetLocalValueEnumerator() GetLocalValueEnumerator() GetLocalValueEnumerator() GetLocalValueEnumerator()

Creates a specialized enumerator for determining which dependency properties have locally set values on this DependencyObject.

(Inherited from DependencyObject)
GetType() GetType() GetType() GetType()

Gets the Type of the current instance.

(Inherited from Object)
GetValue(DependencyProperty) GetValue(DependencyProperty) GetValue(DependencyProperty) GetValue(DependencyProperty)

Returns the current effective value of a dependency property on this instance of a DependencyObject.

(Inherited from DependencyObject)
InvalidateProperty(DependencyProperty) InvalidateProperty(DependencyProperty) InvalidateProperty(DependencyProperty) InvalidateProperty(DependencyProperty)

Re-evaluates the effective value for the specified dependency property

(Inherited from DependencyObject)
MemberwiseClone() MemberwiseClone() MemberwiseClone() MemberwiseClone()

Creates a shallow copy of the current Object.

(Inherited from Object)
OnHeaderStringFormatChanged(String, String) OnHeaderStringFormatChanged(String, String) OnHeaderStringFormatChanged(String, String) OnHeaderStringFormatChanged(String, String)

Occurs when the HeaderStringFormat property changes.

OnPropertyChanged(DependencyPropertyChangedEventArgs) OnPropertyChanged(DependencyPropertyChangedEventArgs) OnPropertyChanged(DependencyPropertyChangedEventArgs) OnPropertyChanged(DependencyPropertyChangedEventArgs)

Invoked whenever the effective value of any dependency property on this DependencyObject has been updated. The specific dependency property that changed is reported in the event data.

(Inherited from DependencyObject)
OnPropertyChanged(PropertyChangedEventArgs) OnPropertyChanged(PropertyChangedEventArgs) OnPropertyChanged(PropertyChangedEventArgs) OnPropertyChanged(PropertyChangedEventArgs)

Raises the INotifyPropertyChanged.PropertyChanged event.

ReadLocalValue(DependencyProperty) ReadLocalValue(DependencyProperty) ReadLocalValue(DependencyProperty) ReadLocalValue(DependencyProperty)

Returns the local value of a dependency property, if it exists.

(Inherited from DependencyObject)
SetCurrentValue(DependencyProperty, Object) SetCurrentValue(DependencyProperty, Object) SetCurrentValue(DependencyProperty, Object) SetCurrentValue(DependencyProperty, Object)

Sets the value of a dependency property without changing its value source.

(Inherited from DependencyObject)
SetValue(DependencyProperty, Object) SetValue(DependencyProperty, Object) SetValue(DependencyProperty, Object) SetValue(DependencyProperty, Object)

Sets the local value of a dependency property, specified by its dependency property identifier.

(Inherited from DependencyObject)
SetValue(DependencyPropertyKey, Object) SetValue(DependencyPropertyKey, Object) SetValue(DependencyPropertyKey, Object) SetValue(DependencyPropertyKey, Object)

Sets the local value of a read-only dependency property, specified by the DependencyPropertyKey identifier of the dependency property.

(Inherited from DependencyObject)
ShouldSerializeProperty(DependencyProperty) ShouldSerializeProperty(DependencyProperty) ShouldSerializeProperty(DependencyProperty) ShouldSerializeProperty(DependencyProperty)

Returns a value that indicates whether serialization processes should serialize the value for the provided dependency property.

(Inherited from DependencyObject)
ToString() ToString() ToString() ToString()

Creates a string representation of the GridViewColumn.

VerifyAccess() VerifyAccess() VerifyAccess() VerifyAccess()

Enforces that the calling thread has access to this DispatcherObject.

(Inherited from DispatcherObject)

Explicit Interface Implementations

INotifyPropertyChanged.PropertyChanged INotifyPropertyChanged.PropertyChanged INotifyPropertyChanged.PropertyChanged INotifyPropertyChanged.PropertyChanged

Applies to

See Also