Пожалуйста, дайте мне знать, если вам нужно больше подробностей.
Я создаю вид миниатюр для мультимедиа (изображения, видео, папки), например, окна для файлов.
Я использую FlowLayoutPanel для хранения миниатюр.И Панель , PictureBox и Метка для каждого эскиза.
Я хотел иметь возможность изменить цвет / формат рамки.Я переопределил OnPaint Panel и добавил туда немного кода.
Теперь вот проблема.Переопределение OnPaint не вызывается.Даже не один раз.Так что моя цветная кайма совсем не появляется.Если я перетаскиваю один на форму, она хорошо отображается, вызывается переопределение ... Так что это должно быть что-то делать с FlowLayoutPanel.
Пользовательская панель:
public class MediaPanel : System.Windows.Forms.Panel
{
public MediaPanel()
{
this.SetStyle(ControlStyles.AllPaintingInWmPaint
| ControlStyles.UserPaint
| ControlStyles.OptimizedDoubleBuffer
| ControlStyles.ResizeRedraw, true);
}
protected override void OnPaint(PaintEventArgs e)
{
ControlPaint.DrawBorder(e.Graphics, this.ClientRectangle,
Color.Red, ButtonBorderStyle.Solid);
}
}
Пожалуйста, дайте мне знать, если мне не хватает какой-либо информации или я недостаточно четко объясняю свою проблему.
Спасибо.