ThemedWindow.HeaderItemContainerStyleSelector Property
Gets or sets an object that chooses a header item style based on custom logic. This is a dependency property.
Namespace: DevExpress.Xpf.Core
Assembly: DevExpress.Xpf.Core.v24.2.dll
NuGet Package: DevExpress.Wpf.Core
#Declaration
public StyleSelector HeaderItemContainerStyleSelector { get; set; }
#Property Value
Type | Description |
---|---|
Style |
A Style |
#Remarks
The ThemedWindow.HeaderItemContainerStyle property defines the header items’ style. If you have more than one style that can be used to render property descriptions, you can implement custom logic to choose the required style. To do this, derive from the StyleSelector class, implement the SelectStyle method that returns the style which meets the required condition, and assign it to the HeaderItemContainerStyleSelector property.
If both the ThemedWindow.HeaderItemContainerStyle and HeaderItemContainerStyleSelector are specified, a property description is rendered using the style returned by the style selector. If the template selector returns null, a header item uses the style specified by the ThemedWindow.HeaderItemContainerStyle property.
The following code sample shows how to use the HeaderItemContainerStyleSelector:
public class SampleStyleSelector : StyleSelector {
public override Style SelectStyle(object item, DependencyObject container) {
if(item is TextEdit) {
return (container as FrameworkElement).TryFindResource("editorStyle") as Style;
}
if(item is HeaderItemControl && (item as HeaderItemControl).Tag != null && (item as HeaderItemControl).Tag.ToString() == "bordered") {
return (container as FrameworkElement).TryFindResource("borderedHeaderItemStyle") as Style;
}
return base.SelectStyle(item, container);
}
}
The image below illustrates the result:
Refer to the Styles and Templates topic for more information.