Определить, когда DataGrid имеет и не имеет содержимого
Я хочу привязать свойство Button IsEnabled к свойству DataGrid / событию, если оно имеет содержимое. Источник элементов DataGrid - это коллекция Observable, но поскольку я реализую фильтрацию, отображаемое может отличаться от коллекции ItemSource.
Есть ли событие или свойство DataGrid, которое запускается, когда представление пустое или не пустое?
1 ответ
Решение
Простой пример может быть сделан с использованием HasItems
свойство из базового класса DataGrid ItemsControl
HasItems считает только отображаемые строки после любого фильтра
<StackPanel>
<DataGrid x:Name="dGrid">
an item
</DataGrid>
<Button Content="a button"
IsEnabled="{Binding HasItems,ElementName=dGrid}" />
</StackPanel>
поэтому HasItems из DataGrid определит, включена кнопка или нет