У меня возникли проблемы, когда после нескольких перетаскиваний (кажется, изначально он работает нормально, вам также нужно отпустить кнопку мыши между каждым перетаскиванием), похоже, что сплиттер сетки застрял и не позволяет перетащить его больше, или иногда он будет только перетаскивать несколько дюймов, а затем снова застревать.Захват GridSplitter
Код, который я использую, фактически находится в ItemTemplate, но для демонстрации проблемы я извлек код проблемы ниже.
<StackPanel Grid.IsSharedSizeScope="True">
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="auto" SharedSizeGroup="SharedColumnWidth" />
<ColumnDefinition Width="auto" />
<ColumnDefinition Width="*" />
</Grid.ColumnDefinitions>
<Label Content="Name"
Grid.Column="0" />
<GridSplitter HorizontalAlignment="Center"
VerticalAlignment="Stretch"
Grid.Column="1"
Width="5" />
<TextBox Grid.Column="2"/>
</Grid>
</StackPanel>
(Скопируйте и вставьте элемент сетки, так что есть несколько в StackPanel, я нашел GridSplitter застрять быстрее, если у вас есть по крайней мере 10 сеток).
Как вы упомянули выше, если вы попытаетесь изменить размер несколько раз (высвобождая кнопку мыши между каждым перетаскиванием), после изменения 5-10 сплиттер, похоже, застрял, по крайней мере, для меня.
Он также кажется застрявшим, когда вы пытаетесь перетащить влево.
Как это обходное решение? .. теперь нет GridSplitters. – wforl
Ну, я забыл GridSplitter, но идея состоит в том, чтобы использовать Bindings для одного и того же свойства и, следовательно, предоставлять размеры разделов ... Place GridSplitter внутри, но самое главное - не использовать теги sharedsizegroup. –