12,255,497 members (54,285 online)
Rate this:
Please Sign up or sign in to vote.
See more:
I have this code in c# and I want to replace it to wpf. how can I do it?:
```protected override void OnPaint(PaintEventArgs pe)
{
GraphicsPath p = new GraphicsPath();
Pen borderPen = new Pen(Color.Red, 3);
p.AddPolygon(new Point[]
{
new Point(-3, this.Height *13/22),
new Point(this.Width *2/13, -3),
new Point(this.Width*9/11,0),
new Point(this.Width,this.Height*2/5),
new Point(this.Width*6/7,this.Height*170/171),
new Point(this.Width*2/11,this.Height*170/171)
});
this.Region = new Region(p);

if (bold)
{
Point[] point = new Point[]
{
new Point(1,this.Height *13/22),
new Point(this.Width *2/13, 1),
new Point(this.Width*9/11,1),
new Point(this.Width*11/17,this.Height *13/22)
};
pe.Graphics.DrawPolygon(borderPen, point);
}

base.OnPaint(pe);
}```
Posted 23-Aug-12 23:07pm
Comments
ridoy 24-Aug-12 5:11am

so strange question!

1 solution

Rate this:
Please Sign up or sign in to vote.

Solution 1

The rough idea is this:
```PointCollection points = new PointCollection(
{
new Point(-3, this.Height *13/22),
new Point(this.Width *2/13, -3),
new Point(this.Width*9/11,0),
new Point(this.Width,this.Height*2/5),
new Point(this.Width*6/7,this.Height*170/171),
new Point(this.Width*2/11,this.Height*170/171)

});
Polygon polygon = new Polygon();
polygon.Points = points;
polygon.Stroke = Brushes.Red;
polygon.StrokeThickness = 3;
polygon.Width = this.Width;
polygon.Height = this.Height;```
Then all you need to do is add it to whatever Container you have set in your XAML. Suppose it's a `Grid` called `LayoutRoot`, you'd use
`LayoutRoot.Children.Add(polygon);`
I leave you to add the `isBold` stuff because that's so similar.

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)

Top Experts
Last 24hrsThis month
 OriginalGriff 552 Sergey Alexandrovich Kryukov 260 CHill60 245 KARTHIK Bangalore 215 ppolymorphe 209
 OriginalGriff 2,360 CHill60 1,615 ppolymorphe 1,473 George Jonsson 1,285 Dave Kreskowiak 1,162

Advertise | Privacy | Mobile
Web02 | 2.8.160426.1 | Last Updated 24 Aug 2012
Copyright © CodeProject, 1999-2016
All Rights Reserved. Terms of Service
Layout: fixed | fluid

CodeProject, 503-250 Ferrand Drive Toronto Ontario, M3C 3G8 Canada +1 416-849-8900 x 100