Пользовательский элемент управления WPF не учитывает пропорциональную ширину сетки "*" при использовании в виде списка - PullRequest
0 голосов
/ 30 апреля 2018

Я создал простой UserControl с Grid с шириной столбца, установленной на пропорциональный интервал.

<UserControl {Usual UC definition stuff}>
    <Grid>
        <Grid.ColumnDefinitions>
            <ColumnDefinition Width="3*"/>
            <ColumnDefinition Width="1*"/>
            <ColumnDefinition Width="1*"/>
            <ColumnDefinition Width="1*" />
        </Grid.ColumnDefinitions>
        <TextBox Text="{Binding Path=RotOrder}" Grid.Column="0" />
        <TextBox Text="{Binding Path=Rot1}" Grid.Column="1"/>
        <TextBox Text="{Binding Path=Rot2}" Grid.Column="2"/>
        <TextBox Text="{Binding Path=Rot3}" Grid.Column="3"/>
    </Grid>
</UserControl>

Когда я использую автономный пользовательский элемент управления в моем окне, пропорциональное расстояние учитывается, даже если элемент управления установлен на фиксированную ширину, а содержимое превышает пространство, доступное в каждом TextBox. Любой контент, который не подходит, просто не учитывается.

Я также пытался использовать элемент управления внутри ListView. Я установил для свойства HorizontalContentAlignment ListViewItem значение «Растянуть», что гарантирует, что все элементы имеют одинаковую ширину.

    <ListView Name="MyList2" Width="150" HorizontalAlignment="Left">
        <ListView.ItemContainerStyle>
            <Style TargetType="ListViewItem">
                <Setter Property="HorizontalContentAlignment" Value="Stretch" />
            </Style>
        </ListView.ItemContainerStyle>
        <ListView.ItemTemplate>
            <DataTemplate>
             <local:UserControl1/>   
            </DataTemplate>

        </ListView.ItemTemplate>
    </ListView>

Пока содержимое текстовых полей помещается в поле, элемент управления работает как шарм с интервалом точно таким, как ожидалось. Но если контент не подходит, TextBox со слишком большим количеством контента начинает расширяться и портить пропорции. Есть ли причина, по которой пропорции ширины столбца не соблюдаются в этом сценарии?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...