0
我有一個簡單的控制代碼來添加一些路徑。當我將控件添加到控件畫布時,什麼也沒有顯示出來。爲了確保我沒有發瘋,我通過代碼進行了調試,並創建了一個XAML等價物,並將其放在我的控件應該顯示的位置。我試過改變z-index和各種Top/Left組合來嘗試讓我的路徑顯示,但沒有運氣。我的控件位於Canvas兒童集合中,但他們只是不想出現!這裏是我的代碼不顯示Silverlight動態控制
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>
當我運行所有東西時,只有硬編碼路徑出現。
發現的問題。我的getColor函數將alpha通道設置爲1而不是255,所以很自然地我看不到它。 – Matt 2009-11-26 18:30:02