Перехват изменения значения SetChildIndex - PullRequest
0 голосов
/ 24 октября 2010

В .NET CF-форме у меня есть несколько панелей. Я хочу иметь свойство, которое всегда нужно информировать о том, находится ли панель впереди.

Можно ли это сделать с помощью метода GetChildIndex ()?

Если да, как мне перехватить изменение SetChildIndex ()?

Заранее спасибо

1 Ответ

0 голосов
/ 24 октября 2010

Для всех, кто заинтересован в будущем использовании:

просто добавьте новый обработчик события для события Paint каждой панели, например:

panel1.Paint += new PaintEventHandler(panel1_Paint);
panel2.Paint += new PaintEventHandler(panel2_Paint);

и в каждом событииобработчики просто вызывают метод, который возвращает состояние всех панелей следующим образом:

void panel2_Paint(object sender, PaintEventArgs e)
        {
            GetPanelStates();

        }

        void panel1_Paint(object sender, PaintEventArgs e)
        {
            GetPanelStates();
        }



        void GetPanelStates()
        {
            Panel2IsInFront = panel2.Parent.Controls.GetChildIndex(panel2) == 0;
            Panel1IsInFront = panel1.Parent.Controls.GetChildIndex(panel1) == 0;
        }
...