C# PhoneAccentColor的XAML行笔划导致未处理的异常
我有一个Microsoft.Phone.Controls.Maps.Map地图控件(Windows 7中旧的Bing地图和新的Bing地图对我来说没有那么多功能) 我以编程方式将一个画布控件(其中有一行)添加到映射中。一切正常时C# PhoneAccentColor的XAML行笔划导致未处理的异常,c#,wpf,xaml,windows-phone-8,C#,Wpf,Xaml,Windows Phone 8,我有一个Microsoft.Phone.Controls.Maps.Map地图控件(Windows 7中旧的Bing地图和新的Bing地图对我来说没有那么多功能) 我以编程方式将一个画布控件(其中有一行)添加到映射中。一切正常时 <Line ... Stroke="{StaticResource PhoneForegroundBrush}" /> 你知道问题是什么吗 如果相关,我的代码: <UserControl.Resources> <ResourceD
<Line ... Stroke="{StaticResource PhoneForegroundBrush}" />
你知道问题是什么吗
如果相关,我的代码:
<UserControl.Resources>
<ResourceDictionary>
<DataTemplate x:Key="MyTemplate">
<Canvas Height="300" Width="300" HorizontalAlignment="Center" VerticalAlignment="Center">
<Line X1="150" X2="150" Y1="0" Y2="130" Stroke="{StaticResource PhoneAccentColor}" Margin="0"/>
</Canvas>
</DataTemplate>
</ResourceDictionary>
</UserControl.Resources>
您应该使用PhoneAccentBrush而不是PhoneAccentColor。因为颜色是颜色的类型。但笔画需要的类型是画笔
<Line ... Stroke="{StaticResource PhoneAccentBrush}" />
或将笔划定义为SolidColorBrush,并使用PhoneAccentColor设置颜色:
<Line>
<Line.Stroke>
<SolidColorBrush Color="{StaticResource PhoneAccentColor}"/>
</Line.Stroke>
</Line>
ContentControl content = new ContentControl();
content.ContentTemplate = (DataTemplate)Resources["MyTemplate"];
Viewbox viewbox = new Viewbox();
viewbox.Width = 300;
viewbox.Height = 300;
viewbox.Child = content;
Map.Children.Add(viewbox);
<Line ... Stroke="{StaticResource PhoneAccentBrush}" />
<Line>
<Line.Stroke>
<SolidColorBrush Color="{StaticResource PhoneAccentColor}"/>
</Line.Stroke>
</Line>