2013-12-23 2 views
1

у меня есть следующие элементы управления (которые я хочу поставить в шаблоне данных):центр круга в квадрате

<Rectangle Width="20" Height="20" Stroke="Black"/> 
<Ellipse Width="15" Height="15" Stroke="Red" StrokeThickness="4"/> 

Я хотел круг, чтобы быть в центре точно в середине квадрата.

Кажется легким, но я просто не понимаю, как это сделать. Все, что я пытаюсь сделать, это немного.

Update:

Это моя последняя попытка, которая не работает:

<Grid> 
    <Grid.ColumnDefinitions> 
     <ColumnDefinition Width="2"/> 
     <ColumnDefinition Width="Auto"/> 
     <ColumnDefinition Width="3"/> 
    </Grid.ColumnDefinitions> 
    <Grid.RowDefinitions> 
     <RowDefinition Height="2"/> 
     <RowDefinition Height="Auto"/> 
     <RowDefinition Height="3"/> 
    </Grid.RowDefinitions> 
    <Rectangle Grid.Row="0" Grid.Column="0" Grid.ColumnSpan="3" Grid.RowSpan="3" Width="20" Height="20" Stroke="Black"/> 
    <Ellipse Grid.Row="1" Grid.Column="1" HorizontalAlignment="Center" VerticalAlignment="Center" Width="15" Height="15" Stroke="Red" StrokeThickness="3"/> 
</Grid> 

Это ближайший я могу получить.

+0

Я полагаю, это потому, что 20-15 дает вам 5 и не делится на 2. Когда я пытаюсь «Эллипс» с размером 14 или 16, он центрируется. – dkozl

+0

@dkozl - Я более чем готов изменить размер эллипса, но это не было для меня с 14 или 16. Если у вас есть способ, пожалуйста, опубликуйте его! – Vaccano

+0

Попробуйте ответить ниже. Я бы предложил то же самое – dkozl

ответ

4

Если у вас четная длина и форма нечетной длины, они никогда не могут быть идеально выровнены. Как 2-блок линия а и 3-единичная линия а, они всегда будут немного от:

--- 
-- 

Так я мог предположить, что делает их оба даже длинами, или оба нечетных длины?

<Grid> 
    <Rectangle Width="20" Height="20" Stroke="Black"/> 
    <Ellipse Width="16" Height="16" Stroke="Red" StrokeThickness="4"/> 
</Grid> 
+0

+1. Избили меня. – Kcvin

+0

Это было сделано. Благодаря! – Vaccano

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