Member 13199106 Ответов: 2

Нужна помощь с обновлением пользовательских элементов управления


Здравствуйте, я пытаюсь выяснить, как обновить пользовательский элемент управления, я попробовал UserControl1.Refresh(); но кажется, что он ничего не делает. Мне это нужно, чтобы обновить listviews внутри каждого usercontrol, который в общей сложности составляет 9.

Каков наилучший возможный метод решения этой проблемы?

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

Пример моего кодирования

  private void refreshTheme()
        {
            /*
             uc_advancedWarfare.Invalidate();
             uc_blackOps.Invalidate();
             uc_blackOps2.Invalidate();
            uc_blackOps3.Invalidate();
            uc_ghosts.Invalidate();
            uc_modernWarfare2.Invalidate();
            uc_modernWarfare3.Invalidate();
            uc_mw.Invalidate();
            uc_waw.Invalidate();
            */

/*
             uc_advancedWarfare.Refresh();
             uc_blackOps.Refresh();
             uc_blackOps2.Refresh();
            uc_blackOps3.Refresh();
            uc_ghosts.Refresh();
            uc_modernWarfare2.Refresh();
            uc_modernWarfare3.Refresh();
            uc_mw.Refresh();
            uc_waw.Refresh();
            */



            //this.Refresh();
            var controls = new UserControl[]
            {
                this.uc_advancedWarfare,
                this.uc_blackOps,
                this.uc_blackOps2,
                this.uc_blackOps3,
                this.uc_ghosts,
                this.uc_modernWarfare2,
                this.uc_modernWarfare3,
                this.uc_mw,
                this.uc_waw
            };

            foreach (var uc in controls)
            {
                if (uc == null)
                    continue;

                uc.BackColor = this.BackColor;
            }
        }


Что я уже пробовал:

Я только попробовал следующее

Файл usercontrol1.Обновить();
Файл usercontrol1.Аннулировать();

2 Ответов

Рейтинг:
1

Maciej Los

Я почти уверен, что вы должны прочитать это: c# - метод UserControl Invalidate (). Как правильно сделать недействительными дочерние элементы управления в UserControl?[^]

Примечание:
Вы не объяснили, что не так с методом invalidate, но я думаю, что вложенные элементы управления UserControl не являются недействительными.


Рейтинг:
0

Member 13199106

К сожалению, это не сработало, БАД, но спасибо за попытку.

Maciej Los

Печально? Вы должны объяснить, почему это не работает для вас...

Member 13199106

Он ничего не делает, как обновление ничего не делает.

OriginalGriff

Это заставляет перекрасить весь элемент управления: если вы хотите, чтобы он сделал что-то еще, то вам нужно точно объяснить, что вы ожидаете от "обновления"!

Maciej Los

5ed!