2009-11-26 4 views
0

У меня есть простой элемент управления с кодом для добавления некоторых путей. Когда я добавляю свой контроль на холст управления, ничего не появляется. Чтобы убедиться, что я не сумасшедший, я отлаживал код и создавал эквивалент XAML и помещал его в ту сторону, где должен был отображаться мой элемент управления. Я попытался изменить z-index и различные комбинации Top/Left, чтобы попытаться показать мои пути, но не повезло. Мои элементы управления находятся в коллекции Canvas children, но они просто не хотят появляться! Вот мой кодSilverlight Dynamic Control не отображает

for (int i = 0; i < 4; i++) 
{ 
    SolidColorBrush brush = new SolidColorBrush(); 
    brush.Color = GetColor(); 

    path = new Path(); 
    path.Data = getData(i); 
    path.Name = i.ToString(); 
    path.SetValue(Canvas.LeftProperty, 150.0); 
    path.SetValue(Canvas.TopProperty, 150.0); 
    path.SetValue(Canvas.ZIndexProperty, 1000); 
    path.Fill = brush; 
    mainLayout.Children.Add(path); 
} 

И есть XAML. Пути, жестко закодированные в нем, - это пути, которые я создал, выполнив код.

<Canvas Name="mainLayout"> 
    <Path Name="Path5" Fill="Red" Canvas.Left="450" Canvas.Top="150" Data="M 0,-100 A 100,100 0.628332123128715 0 1 58.7796248729471,-80.9009004881628 L 0,0" ></Path> 
    <Path Name="Path6" Fill="Green" Canvas.Left="450" Canvas.Top="150" Data="M 58.7796248729471,-80.9009004881628 A 100,100 0.559576083957105 0 1 92.7589501245075,-37.3601013355041 L 0,0" ></Path> 
    <Path Name="Path7" Fill="Blue" Canvas.Left="450" Canvas.Top="150" Data="M 92.7589501245075,-37.3601013355041 A 100,100 3.11153310318617 0 1 -91.5941871397306,40.1310961999795 L 0,0" ></Path> 
    <Path Name="Path8" Fill="Yellow" Canvas.Left="450" Canvas.Top="150" Data="M -91.5941871397306,40.1310961999795 A 100,100 1.98374399690759 0 1 -1.1330996904646E-13,-100 L 0,0" ></Path> 
</Canvas> 

Когда я запускаю все, появляются только жестко закодированные пути.

ответ

1

Два короткий вопрос, когда вы ступил через него, сделали GetDate (я) возвращает путь, и сделал GetColor() возвращает ничего, кроме colors.transparent

+0

Найдено вопроса. У моей функции getColor был установлен альфа-канал на 1 вместо 255, поэтому, естественно, я не мог его увидеть. – Matt

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