Изменение ширины элемента в пользовательском контроле на ширину элемента в другом пользовательском контроле с использованием раскадровки - PullRequest
0 голосов
/ 09 октября 2018

Я хочу установить ширину "GridMenu" в моем Usercontrol1 равным ActualWidth Grid.Column (0) в главном окне.

Usercontrol 1:

    <Usercontrol...> 
<Usercontrol.Resources>          
     <Storyboard x:Key="OpenMenu">
                <DoubleAnimationUsingKeyFrames Storyboard.TargetProperty="(FrameworkElement.Width)" Storyboard.TargetName="GridMenu">
                    <EasingDoubleKeyFrame KeyTime="0" Value="30"/>
                    <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="thisValueIWantToBind"/>
                </DoubleAnimationUsingKeyFrames>
    </Storyboard>
</Usercontrol.Resources> 

         <Grid x:Name="GridMenu" HorizontalAlignment="Left" Width="30" Background="LightBlue"/>
    </Usercontrol>

Главное окно:

 <Grid Grid.Row="1" Background="Beige">
            <Grid.ColumnDefinitions>
                <ColumnDefinition Width="*"/>
                <ColumnDefinition Width="5"/>
                <ColumnDefinition Width="3*"/>
            </Grid.ColumnDefinitions>

            <local:usercontrol1 Grid.Column="0"/>
</Grid>

Ответы [ 2 ]

0 голосов
/ 11 октября 2018

Вы можете создать свойство зависимости в usercontrol1, например, Column1Width.В главном окне присвойте имя первому столбцу.Также

Тогда в usercontrol1,

0 голосов
/ 10 октября 2018

Вы можете написать раскадровку в коде, чтобы иметь легкий доступ к MainWindow из пользовательского контроля.Просто предположение.

...