Как изменить цвет одной дочерней панели внутри панели и как добавить дочернюю панель и элементы управления внутри панели C # - PullRequest
0 голосов
/ 03 июля 2018

У меня есть панель, которая содержит дочерние панели, а внутри дочерних панелей у меня есть некоторые элементы управления, такие как PictureBox и label.

Как мне изменить цвет спины только одной дочерней панели, на которую указывает указатель мыши с помощью foreach, и как я могу изменить цвет выбранной дочерней панели и как я могу создать дочерние панели внутри панели, которые содержат PictureBox и этикетка?

Проблемы будут возникать, если между краем Родительского (Панельного) и Дочернего элементов управления (или маленьким) не будет пробела, чтобы указатель мыши был на правой стороне дочерней панели для работы. Как я могу это исправить? это мой код для события mouseleave:

private void left_panel_MouseLeave(object sender, EventArgs e)
{
  foreach (Panel p in left_panel.Controls.OfType<Panel>())
  {
    p.BackColor = Color.Transparent;
  }
}

Мышь, введите событие:

private void left_panel_MouseEnter(object sender, EventArgs e)
{
  foreach (Panel p in left_panel.Controls.OfType<Panel>())
  {
    if (this.ClientRectangle.Contains(p.PointToClient(Control.MousePosition)))
    {
      p.BackColor = ColorTranslator.FromHtml("#ff0000");
    }
    else
      p.BackColor = Color.Transparent;
  }
}

Вот что у меня есть: My Program

Я хочу что-то вроде этого: xbox beta windows 10 app

...