. Sadece RV1987'nin cevabında bahsettiğim gibi, satırları tekrarlamak yeterli olmayacaktır.
<DataGrid>
<DataGrid.Resources>
<Style TargetType="DataGridRow">
<Setter Property="Visibility" Value="{Binding ...}" />
</Style>
</DataGrid.Resources>
</DataGrid>
DÜZENLEME: Eğer bağlamak ne
Eğer satır göstermesi gerekir olsun veya olmasın bilgisini tutun yere bağlıdır. ciltlenmiş koleksiyonunda her veri nesnesi bir bool ShouldBeDisplayed
özelliği vardır Örneğin, böyle bir şey olurdu: Burada dikkat edilmesi gereken
<DataGrid>
<DataGrid.Resources>
<BooleanToVisibilityConverter x:Key="booleanToVisibilityConverter" />
<Style TargetType="DataGridRow">
<Setter Property="Visibility" Value="{Binding Path=ShouldBeDisplayed, Converter={StaticResource booleanToVisibilityConverter}}" />
</Style>
</DataGrid.Resources>
</DataGrid>
Bir şey sanallaştırma (varsayılan olarak olan) açıkken, olacak o Oluşturulmamış satırlar için null. Bu, DataGrid'inizde 'VirtualizingStackPanel.IsVirtualizing = 'False' 'seçeneğini belirlemedikçe, tüm satırlarda tek satırda yineleme yapamayacağınız anlamına gelir, ancak bu durum, ızgara performansınızın düşük olmasına neden olabilir. –