BaseColumn.IsEnabledBinding Property
Gets or sets the binding that determines a cell’s enabled state.
Namespace: DevExpress.Xpf.Grid
Assembly: DevExpress.Xpf.Grid.v20.2.Core.dll
Declaration
Property Value
Type | Default | Description |
---|---|---|
BindingBase | null |
The binding that associates the enabled state of cells with a property in a data source. |
Remarks
The code sample below disables cells in the Start Date and Due Date columns if the Progress value equals 100%:
<dxg:TreeListControl x:Name="treeList"
ItemsSource="{Binding Path=EditableDataSource, Source={StaticResource employeeTasks}}">
<dxg:TreeListControl.Columns>
<dxg:TreeListColumn FieldName="Name" Header="Task"/>
<dxg:TreeListColumn FieldName="Employee" Header="Assignee"/>
<dxg:TreeListColumn FieldName="Status" Header="Progress"/>
<dxg:TreeListColumn FieldName="StartDate"
IsEnabledBinding="{Binding IsCompleted, Converter={dx:BoolInverseConverter}}"/>
<dxg:TreeListColumn FieldName="DueDate"
IsEnabledBinding="{Binding IsCompleted, Converter={dx:BoolInverseConverter}}"/>
</dxg:TreeListControl.Columns>
<dxg:TreeListControl.View>
<dxg:TreeListView x:Name="view" KeyFieldName="ID" ParentFieldName="ParentID"/>
</dxg:TreeListControl.View>
</dxg:TreeListControl>
public class EmployeeTask: INotifyPropertyChanged {
public int ID { get; set; }
public int ParentID { get; set; }
public string Name { get; set; }
public string Employee { get; set; }
public DateTime StartDate { get; set; }
public DateTime DueDate { get; set; }
public bool IsCompleted { get { return Status == 100; } }
int _status;
public int Status {
get { return _status; }
set { _status = value; OnPropertyChanged(); OnPropertyChanged("IsCompleted"); }
}
// ...
}
Customize Appearance Settings of Disabled Cells
To change the appearance settings of read-only cells, use the ColumnBase.CellStyle property with a trigger. Use the LightweightCellEditor as the style’s target type.
<dxg:TreeListColumn.CellStyle>
<Style TargetType="dxg:LightweightCellEditor">
<Style.Triggers>
<Trigger Property="IsEnabled" Value="False">
<Setter Property="Background" Value="DarkGray" />
</Trigger>
</Style.Triggers>
</Style>
</dxg:TreeListColumn.CellStyle>
Use the LightweightCellEditor.EditorOpacity property to change the opacity of the cell editor displayed in a disabled cell.
For more information, refer to Disable Editing.