WPF Grid: GridSplitter Event

I need to put an event when resizing grid columns using gridsplitter. I tried to use the sizeChanged event on the columns that are affected. But its not working Please tell me how to do it Thanks

+4
source share
1 answer

I am using the SizeChanged event for content inside columns.

<Grid HorizontalAlignment="Stretch" VerticalAlignment="Stretch"> <Grid.ColumnDefinitions> <ColumnDefinition x:Name="leftColumn" MinWidth="268" Width="268*"/> <ColumnDefinition Width="Auto"/> <ColumnDefinition x:Name="centerColumn" MinWidth="327" Width="327*"/> <ColumnDefinition Width="Auto"/> <ColumnDefinition x:Name="rightColumn" MinWidth="393" Width="393*"/> </Grid.ColumnDefinitions> <custom:Control x:Name="panel1" Grid.Column="0" HorizontalAlignment="Stretch" VerticalAlignment="Stretch" Margin="5,0,0,5" SizeChanged="PanelSizeChanged"/> <GridSplitter Grid.Column="1" Background="#00000000" HorizontalAlignment="Center" VerticalAlignment="Stretch" ResizeBehavior="PreviousAndNext" Width="5" ResizeDirection="Columns"/> <custom:Control x:Name="panel2" Grid.Column="2" HorizontalAlignment="Stretch" VerticalAlignment="Stretch" Margin="5,0,0,5" SizeChanged="PanelSizeChanged"/> <GridSplitter Grid.Column="3" Background="#00000000" HorizontalAlignment="Center" VerticalAlignment="Stretch" ResizeBehavior="PreviousAndNext" Width="5" ResizeDirection="Columns"/> <custom:Control x:Name="panel2" Grid.Column="4" HorizontalAlignment="Stretch" VerticalAlignment="Stretch" Margin="5,0,0,5" SizeChanged="PanelSizeChanged"/> </Grid> 

I manage all the size changes I need in one PanelSizeChanged callback. Of course, you can use different handlers for each column.

+2
source

Source: https://habr.com/ru/post/1306804/


All Articles