/ / Obcinanie od lewej zamiast prawej, gdy nie ma wystarczająco dużo miejsca na element potomny? - wpf

Wycinanie z lewej zamiast prawej, gdy nie ma wystarczająco dużo miejsca na element podrzędny? - wpf

Mam siatkę z trzema kolumnami o szerokości *, Auto, *.

Kiedy zwijam szerokość siatki za pomocą ekspandera,Chcę, aby środkowa kolumna pozostała stałym rozmiarem. Chcę, aby kolumna po prawej stronie zaczynała przycinać od prawej krawędzi. Jest to domyślne zachowanie i działa poprawnie. Chciałbym jednak, aby pierwsza kolumna klipowała z lewej strony. To znaczy, chciałbym, aby lewy brzeg kolumny został najpierw ukryty, a lewa kolumna jest wycinana z prawej strony.

Mam nadzieję, że wyjaśniłem to wystarczająco dobrze! Dzięki

Odpowiedzi:

1 dla odpowiedzi № 1

Prawdopodobnie musisz odpowiednio ustawić HorizontalAlignment = "Right" i = "Left".

Oto przykład, który może nie pasować dokładnie do Twoich wymagań, ale klipy z lewej i prawej strony, jak potrzebujesz:

<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*"/>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="*"/>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="Auto"/>
</Grid.ColumnDefinitions>


<TextBlock Grid.Column="0" Text="Left hand column" HorizontalAlignment="Right"/>
<Rectangle Grid.Column="1" Fill="Blue" Width="100"/>
<TextBlock Grid.Column="2" Text="Right hand column" HorizontalAlignment="Left"/>
<GridSplitter Grid.Column="3" Width="4" VerticalAlignment="Stretch" ResizeBehavior="PreviousAndNext"/>
<Rectangle Grid.Column="4" Fill="Red"/>
</Grid>