Управление не изменяет размеры с помощью gridsplitter

У меня есть панель док-станции слева от моего экрана, которая содержит список. Список заполнен пользовательскими элементами, определенными в другом классе. Справа от моего списка у меня есть гридсплиттер.

Когда я щелкаю и перетаскиваю свой gridsplitter, размер списка изменяется, как и ожидалось, как бы ни делали элементы внутри.

Я хотел бы, чтобы элементы внутри соответственно изменили размеры, чтобы я мог использовать textrimming, когда элемент управления будет отключен.

В настоящее время у меня есть:

        <Grid.ColumnDefinitions>
        <ColumnDefinition Width="150" MaxWidth="500" MinWidth="100"/>
        <ColumnDefinition/>
    </Grid.ColumnDefinitions>
    <toolkit:DockPanel HorizontalAlignment="Stretch" VerticalAlignment="Stretch" Margin="0,0,9,0">
        <Button toolkit:DockPanel.Dock="Top" Height="30" Content="Create" Visibility="{Binding Path=IsVisible, Mode=TwoWay}" Command="{Binding Path=Create, Mode=TwoWay}" />
        <ScrollViewer HorizontalAlignment="Stretch" VerticalAlignment="Stretch" VerticalScrollBarVisibility="Auto"  HorizontalScrollBarVisibility="Hidden">
            <ListBox HorizontalAlignment="Stretch" ItemContainerStyle="{StaticResource ItemContainerStyle}" ItemsSource="{Binding Path=ViewModel, Mode=TwoWay}" SelectedItem="{Binding Path=Selected, Mode=TwoWay}">
                    <ListBox.ItemTemplate>
                        <DataTemplate>
                            <StackPanel Orientation="Vertical" HorizontalAlignment="Stretch">
                                <ContentControl HorizontalAlignment="Stretch">
                                <myNamespace:MycustomControl HorizontalAlignment="Stretch" DataContext="{Binding}" Height="40"/>
                                </ContentControl>
                            </StackPanel>
                        </DataTemplate>
                    </ListBox.ItemTemplate>
                </ListBox>
            </ScrollViewer>
    </toolkit:DockPanel>
    <sdk:GridSplitter Width="10" HorizontalAlignment="Right" Grid.Row="1" Style="{StaticResource VerticalGridSplitterStyle}" />

Также в моем пользовательском классе элементов все определено HorizontalAlignment = Stretch и не имеет фиксированной ширины.

Изменить: Также я попытался привязать ширину моего пользовательского элемента к ширине моего списка без удачи.

1 ответ

Решение

Оказалось, что горизонтальная полоса прокрутки вызывала проблему (хотя она не была видна)

ScrollViewer.HorizontalScrollBarVisibility="Disabled"

Решил мою проблему

Другие вопросы по тегам