Раскраска многоугольника - PullRequest
0 голосов
/ 20 марта 2012

Я хочу раскрасить многоугольник ...

Это полигон в моем Compass.xaml:

<Polygon x:Name="arrow"  Points="5, 90 35, 90 35, 160 65, 160 65, 90 95, 90 50, 5" Stroke="Black" StrokeThickness="4" Fill="White" Margin="42,32,184,0" Grid.Column="1" Grid.ColumnSpan="2" Height="163" VerticalAlignment="Top">
    <Polygon.RenderTransform>
        <RotateTransform x:Name="rotateArrow" Angle="0"  CenterX="50" CenterY="160" />
    </Polygon.RenderTransform>
</Polygon>

И вот откуда я получаю Цвет:

Channel lbi = (Channel) GlobalVariables.ChannelList[Channelindex];

lbi.Color => "0xED1C24"

Теперь я должен заполнить этот многоугольник этим цветом ...

Я пытался сделать это с

arrow.fill('blue'); 

(Просто случайный цвет, чтобы попробовать, если он будет работать.), Но он не работал ...

Может кто-нибудь мне помочь?

EDIT:

Хорошо, теперь это работает.

string[] colorsplit = currentChannel.Color.Split('x');
arrow.Fill = GetColorFromHexa("#FF"+colorsplit[1]);

Проблема была в том, что я не знал, что должен поставить #FF перед строкой ..

Ответы [ 2 ]

2 голосов
/ 20 марта 2012

C #

arrow.Fill = new SolidColorBrush(System.Windows.Media.Colors.Blue);
2 голосов
/ 20 марта 2012

А как же

arrow.Fill = new SolidColorBrush(Colors.Blue);

?

...