.net wpf xaml grid datatrigger

.net - ¿Es posible usar Triggers en Grid RowDeDefinitions?



wpf xaml (2)

Creo que el único problema con su código Xaml es que está sobrescribiendo DataTrigger al configurar Height explícitamente en RowDefinition . Pruebe con usar un Setter en su lugar

<RowDefinition> <RowDefinition.Style> <Style> <Setter Property="RowDefinition.Height" Value="2*"/> <Style.Triggers> <DataTrigger Binding="{Binding Path=ShowSection}" Value="True"> <Setter Property="RowDefinition.Height" Value="2*"/> </DataTrigger> <DataTrigger Binding="{Binding Path=ShowSection}" Value="False"> <Setter Property="RowDefinition.Height" Value="0"/> </DataTrigger> </Style.Triggers> </Style> </RowDefinition.Style> </RowDefinition>

Tengo una grilla cuyas filas deben redimensionarse dinámicamente en función del modelo de vista. Me gustaría hacer algo como lo siguiente:

<RowDefinition Height="2*"> <RowDefinition.Style> <Style> <Style.Triggers> <DataTrigger Binding="{Binding Path=ShowSection}" Value="True"> <Setter Property="RowDefinition.Height" Value="2*"/> </DataTrigger> <DataTrigger Binding="{Binding Path=ShowSection}" Value="False"> <Setter Property="RowDefinition.Height" Value="0"/> </DataTrigger> </Style.Triggers> </Style> </RowDefinition.Style> </RowDefinition>

Esto compila, no arroja errores, pero no parece tener ningún efecto. ¿Hay algo que me falta, o la Cuadrícula no permite que sus filas cambien de tamaño después de que se dibuja la forma o algo por el estilo?


Sé que esta publicación tiene 3 años, pero aún así podría ayudar a alguien.

<RowDefinition> <RowDefinition.Style> <Style TargetType="RowDefinition"> <Style.Triggers> <DataTrigger Binding="{Binding Path=ShowSection}" Value="True"> <Setter Property="Height" Value="2*"/> </DataTrigger> <DataTrigger Binding="{Binding Path=ShowSection}" Value="False"> <Setter Property="Height" Value="0"/> </DataTrigger> </Style.Triggers> </Style> </RowDefinition.Style> </RowDefinition>

Estaba en la misma situación, logré hacerlo funcionar configurando TargetType en RowDefinition.