有什么方法可以将PhoneAccentBrush添加到图像中?所以我得到一些箭头样式的图像,我希望它根据手机主题改变,如红色或蓝色等......
答案 0 :(得分:0)
这是另一个想法。 不要修改图像本身,而是在图像上放置一个用PhoneAccentBrush绘制箭头的多边形。 但它只适用于不太复杂的形状。
<Grid Height="211" Width="211">
<Image Source="{Binding Path=ImageSource}"></Image>
<Polygon Fill="{StaticResource PhoneAccentBrush}" Points="0,0 84,0 63,21 84,42 0,42" />
</Grid>
答案 1 :(得分:0)
箭头应该是透明的,您可以使用此代码:
Grid g = new Grid();
g.Background = new SolidColorBrush( ( App.Current.Resources[ "PhoneAccentBrush" ] as SolidColorBrush ).Color );
g.Width = GetImageWidth( ... ); // Image Width
g.Height = GetImageHeight( ... ); // Image Height
Image someImage = new Image();
someImage.Source = new BitmapImage( new Uri( "/ApplicationIcon.png", UriKind.Relative ) ); // Your image
g.Children.Add( someImage );
int w = Convert.ToInt32( g.ActualWidth );
int h = Convert.ToInt32( g.ActualHeight );
WriteableBitmap wb = new WriteableBitmap( w, h );
wb.Render( g, null );
wb.Invalidate();