Как я могу преобразовать границы, но не содержимое внутри? - PullRequest
0 голосов
/ 04 марта 2019

Вот изображение моей проблемы и мой код ниже.Я хотел бы знать, как я могу перевернуть текст правой стороной вверх.Ниже также есть ссылка, где я получил предложения по настройке масштабного преобразования Y в 1.

https://docs.microsoft.com/en-us/dotnet/framework/wpf/advanced/how-to-flip-a-uielement-horizontally-or-vertically

MyImage

<Viewbox>
                <Grid>
                  <ItemsControl ItemsSource="{Binding FaceParts}">
                    <ItemsControl.ItemsPanel>
                      <ItemsPanelTemplate>
                        <Canvas Background="SlateBlue" Height="140" Width="80" />
                      </ItemsPanelTemplate>
                    </ItemsControl.ItemsPanel>

                    <ItemsControl.ItemContainerStyle>
                      <Style TargetType="ContentPresenter">
                        <Setter Property="RenderTransform" Value="1 0 0 -1 0 0"/>
                        <Setter Property="Canvas.Left" Value="{Binding X}"/>
                        <Setter Property="Canvas.Top" Value="{Binding Y}"/>
                      </Style>
                    </ItemsControl.ItemContainerStyle>
                    <ItemsControl.ItemTemplate>
                      <DataTemplate>
                        <StackPanel>
                          <Border Width="{Binding Width}" Height="{Binding Height}" Background="{Binding Fill}" BorderBrush="Black" BorderThickness=".20">
                            <Viewbox>
                              <TextBlock Text="{Binding TextOverlay}" RenderTransformOrigin=".5,.5">
                                <TextBlock.RenderTransform>
                                  <ScaleTransform ScaleY="1"/>
                                </TextBlock.RenderTransform>
                              </TextBlock>
                            </Viewbox>
                          </Border>
                        </StackPanel>
                      </DataTemplate>
                    </ItemsControl.ItemTemplate>
                  </ItemsControl>

                  <Viewbox  VerticalAlignment="Bottom"  Height="5" Margin="0,0,0,5">
                    <TextBlock  Background="SlateBlue"  TextAlignment="Center" Text="{Binding SelectedViewerProduct.Width, Converter={StaticResource FractionConverter}}"/>
                  </Viewbox>

                </Grid>
              </Viewbox>

1 Ответ

0 голосов
/ 04 марта 2019

Как оказалось, установка ScaleY в положительное значение не влияет на переворачивание его правой стороной вверх, чтобы перевернуть ее правой стороной вверх, мне пришлось установить ScaleY на -1.По сути, переверните его снова в обратном направлении, чтобы сделать его правой стороной вверх.

enter image description here

...