У меня есть следующий код, который работает, чтобы нарисовать границу вокруг элемента управления в приложении WinForm 3.5.
Что я не могу понять, так это как ТОЛЩИНА граница, которая рисуется. Я попробовал Inflate(5,5)
на ClientRectangle
, но это фактически заставило Границу исчезнуть все вместе вместо того, чтобы сделать ее толще.
У меня складывается впечатление, что мне действительно нужно работать с e.Graphics
, чтобы достичь этого, но я не могу понять, как я живу.
Идеи
ControlPaint.DrawBorder(
e.Graphics, datImmunizationRecieved.ClientRectangle, Color.OrangeRed, ButtonBorderStyle.Solid);
Ответ в действии для дальнейшего использования
Ниже показано, как я реализовал тот же метод, но перегружен ( примечание: оба они находятся внутри Paint_Event )
var borderColor = Color.FromArgb(173, 216, 230);
var borderStyle = ButtonBorderStyle.Solid;
var borderWidth = 3;
ControlPaint.DrawBorder(
e.Graphics,
lkuNOImmunizationReason.ClientRectangle,
borderColor,
borderWidth,
borderStyle,
borderColor,
borderWidth,
borderStyle,
borderColor,
borderWidth,
borderStyle,
borderColor,
borderWidth,
borderStyle);