2016-10-28 2 views
0

я работаю над созданием элемент управления WPF, которые содержат знак, как на картинке ниже: enter image description hereДобавить наклонный значок в UserControl WPF

Вот код, который я попробовал, но это не регулируются размерами окна

<Border BorderBrush="Black" BorderThickness="2" HorizontalAlignment="Left" Height="261" Margin="49,23,0,0" VerticalAlignment="Top" Width="359" Background="#FFF7EDED"> 
      <Grid> 
       <TextBlock Text="Hi there" Margin="5" HorizontalAlignment="Center" VerticalAlignment="Center"/> 
       <Rectangle Fill="#FFA42828" Stroke="Black" RenderTransformOrigin="0.5,0.5" Opacity="0.8" StrokeThickness="0" Margin="-42.14,117.204,-16.176,101.754"> 
       <Rectangle.RenderTransform> 
        <TransformGroup> 
         <ScaleTransform/> 
         <SkewTransform AngleX="-30.771"/> 
         <RotateTransform Angle="-31.015"/> 
         <TranslateTransform X="13.961" Y="-8.394"/> 
        </TransformGroup> 
       </Rectangle.RenderTransform> 
      </Rectangle> 
      </Grid> 
     </Border> 

Я попытался с помощью управления Rectangle, изменив его оси X и Y, но он не будет работать, так как мне нужно что-то регулируемое с размером элемента управления. Любая помощь пожалуйста.

ответ

0

В основном это граница, диагональная линия и центрированный текст. единственный фокус в том, чтобы установить правильный координат для линии, я использовал связывание с ActualHeight и ActualWidth для этой цели

<Border Height="50" Name="brd" BorderBrush="Black" BorderThickness="2"> 
    <Grid Name="bounds"> 
     <Line Stroke="Green" StrokeThickness="2" 
      X1="0" Y1="{Binding Path=ActualHeight, ElementName=bounds}" 
      X2="{Binding Path=ActualWidth, ElementName=bounds}" Y2="0"> 
     </Line> 

     <TextBlock Text="Hello World" FontSize="24" 
        VerticalAlignment="Center" 
        HorizontalAlignment="Center" 
        Foreground="Black"/> 
    </Grid> 
</Border> 

result

+0

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

Смежные вопросы