Следующий код происходит внутри System.Windows.Forms.PaintEventHandler о наличии System.Windows.Forms.PictureBox под .NET Framework Compact (е из PaintEventArgs типа):Почему эта предположительно пунктирная линия, показанная как прочная в Windows Forms .NET Compact Framework?
var penDashed = new Pen(Color.Red, 3);
penDashed.DashStyle = System.Drawing.Drawing2D.DashStyle.Dash;
using (penDashed)
{
e.Graphics.DrawLine(penDashed, 30, 30, 100, 30);
}
Линия рендеринга твердого вещества несмотря на то, что я установил DashStyle Dashed. Длина и цвет прекрасно.
Любые идеи?
Должен работать так, как предполагается. Интересно, почему вы объявляете и изменяете Pen за пределами используемого предложения. Это выглядит неправильно для меня .. 'using (Pen penDashed = new Pen (Color.Red, 3)) {penDashed.DashStyle = System.Drawing.Drawing2D.DashStyle.Dash; e.Graphics.DrawLine (penDashed, 30, 30, 100, 30);} 'будет так, как я пишу это. – TaW
Причина, по которой он объявлен как таковой, заключается в том, что я следую стилю, уже присутствующему в унаследованном коде. Это на самом деле рисование прямоугольников, которые являются прочными (используя Graphics.DrawPolygon()). Я пытаюсь добавить пунктирный прямоугольник в микс. Пунктирный прямоугольник был рендерингом как сплошной, поэтому я попробовал что-то более простое, как линия, и получил тот же результат. – GrantA
Ширина пера заставляет тире касаться друг друга. Если вы нарисуете линию с шириной пера 1, снова появится черточка. Я не знаю, есть ли простой способ получить желаемый результат. –