이미지의 Width
을 ActualHeight
에 바인딩하려고합니다. (높이는 레이아웃에 의해 결정되며 정사각형이되고 싶습니다. 더 좋은 방법이 있다면 듣다).ActualHeight 바인딩 너비 - 부분적으로 만 작동
<Grid Grid.Row="1" VerticalAlignment="Stretch">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="auto"/>
<ColumnDefinition Width="auto"/>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="*"/>
<RowDefinition Height="*"/>
</Grid.RowDefinitions>
<Image x:Name="favImage1" Source="{Binding Controller.FailStorage.FailRoamingStorage.Favorites[0].ImageUri}" Grid.Column="0" Grid.Row="0" Style="{StaticResource FavoriteImageStyle}" Width="{Binding ActualHeight, ElementName=favImage1, Mode=OneWay}"/>
</Grid>
스타일이 같은 정의됩니다 : - 컬렉션에 항목을 추가 한 후 다시 페이지로 이동 작동하는 것 같다
<Style x:Key="FavoriteImageStyle" TargetType="Image">
<Setter Property="Stretch" Value="UniformToFill"/>
<Setter Property="Margin" Value="0,0,12,12"/>
<Setter Property="VerticalAlignment" Value="Stretch"></Setter>
</Style>
지금이 부분적으로 작동
이
내 XAML입니다 .그러나 페이지로 이동하거나 그 다음 페이지로 이동하면 이미지가 표시되지 않습니다.
충분히 흥미롭게도로드 후 이미지의 ActualWidth는 ActualHeight가 아닙니다. 그것은 적다. 그리고 그리드의 폭은 ... 그냥 일반 이상한 어느 ... favImage1.ActualWidth
185.13514709472656
favImage1.ActualHeight
274.0
((
더 적은이다 FrameworkElement) favImage1.Parent) .ActualWidth
138.0
올바른 방법은 무엇입니까?
당신은 어떤 트리거 폭의 값을 설정할 수 있습니까? –
ActualHeight를 의미하는 트리거의 속성에 바인딩 하시겠습니까? –