2016-06-09 3 views
0

Я довольно новичок в WPF, и я борюсь с чем-то, что, я считаю, не должно вызывать у меня столько головной боли. Весь контент, который я выкопал по этой теме, до сих пор продолжается вокруг рисования кругов/эллипсов на поверхности Canvas/InkCanvas. Тем не менее, мой вопрос:Возможно ли иметь поверхность InkCanvas в форме круга/эллипса?

Возможно ли иметь область InkCanvas в форме круга/эллипса? Если да, я бы очень хотел получить дополнительную информацию по этому вопросу.

Спасибо!

InkCanvas появляется круглым, но активная область остается прямоугольной:

<Grid HorizontalAlignment="Stretch" VerticalAlignment="Stretch"> 
    ... 
     <Border Grid.Column="1" Grid.Row="1" Background="#FF909090" BorderBrush="White" BorderThickness="5,5,5,5" CornerRadius="180"> 
      <Grid Width="Auto" Height="325" Background="{x:Null}" VerticalAlignment="Bottom" > 
      ... 
       <InkCanvas x:Name="InkCanvas" Background="{x:Null}" Grid.RowSpan="3" Grid.ColumnSpan="3" > 
        ... 
       </InkCanvas> 
       ... 
      </Grid> 
     ... 
     </Border> 
    ... 
    </Grid> 

ответ

0

хорошо вы могли бы попытаться поместить холст внутри границы затем установить свойство углового радиуса границы.

<Border BorderBrush="Black" BorderThickness="3" HorizontalAlignment="Left" VerticalAlignment="Top" CornerRadius="100"> 
     <InkCanvas Background="{x:Null}"/> 
    </Border> 
+0

Я уже пробовал это, и он действительно решает мою проблему в пользовательском интерфейсе - т. Е. Холст появляется вокруг. Однако функциональность, которую я ищу, по-прежнему отсутствует, поскольку активная поверхность холста остается прямоугольной и по-прежнему занимает все пространство сетки, в которой помещается граница. Я добавил код в свой пост, если он вам поможет. – yuDev

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