Форум программистов, компьютерный форум, киберфорум
C# Windows Forms
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.88/8: Рейтинг темы: голосов - 8, средняя оценка - 4.88
0 / 0 / 0
Регистрация: 16.04.2014
Сообщений: 46

Удаление всех кнопок

04.12.2016, 12:00. Показов 1619. Ответов 2
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте!
В программе динамически создается набор кнопок, при определенных событиях нужно удалить все кнопки так, чтобы ScrollBar, созданный при старте программы, не удалялся.
Делаю вот так:

C#
1
2
3
4
5
foreach (Control ctrl in TaskPanel.SelectedTab.Controls)
            {
                if (ctrl is MetroButton)
                    TaskPanel.SelectedTab.Controls.Remove(ctrl);
            }
Но проблема в том, что это работает не совсем правильно.
Кнопки удаляются, но не все. Удалить можно полностью, только если вызвать этот цикл 5-6 раз.
Если использовать Clear, то всё удаляется без проблем, но нужно удалить только кнопки.
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
04.12.2016, 12:00
Ответы с готовыми решениями:

Удаление кнопок на форме
Как при нажатии на любую кнопку формы создавать новую кнопку. потом создать кнопку которая удаляет все кнопки кроме самой первой и та...

Удаление динамически созданных кнопок
Создаётся динамически, к примеру, 10 кнопок. На каждую созданную кнопку по нажатию ПКМ должно вызываться контекстное меню с пунктом...

Удаление кнопок
Здравствуйте, у меня вот какой вопрос, я динамически создаю кучу кнопок b.Click += delegate(object _sender, EventArgs...

2
 Аватар для ViterAlex
8952 / 4864 / 1886
Регистрация: 11.02.2013
Сообщений: 10,246
04.12.2016, 13:27
Неправильно работает, потому что ты меняешь коллекцию внутри foreach. Нужно иначе:
C#
1
2
3
for (var i = TaskPanel.SelectedTab.Controls.Count - 1; i >= 0; i--)
    if (TaskPanel.SelectedTab.Controls[i] is MetroButton)
        TaskPanel.SelectedTab.Controls.RemoveAt(i);
1
132 / 82 / 29
Регистрация: 01.10.2014
Сообщений: 263
04.12.2016, 13:37
ArrSoft,
C#
1
TaskPanel.SelectedTab.Controls.OfType<Button>().ToList().ForEach((btn)=>TaskPanel.SelectedTab.Controls.Remove(btn));
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
04.12.2016, 13:37
Помогаю со студенческими работами здесь

Отлов всех кнопок мыши
как отловить все кнопки? Основные кнопки отлавливаются, а дополнительные нет. Пробовал через GetSystemMetrics с параметром SMCMOUSEBUTTONS,...

Событие для всех кнопок сразу
Искал в Гугле не нашел , если были темы сорри.... Короче на панельке чуть больше 20 кнопок , нужно чтобы при наведении курсора каждая...

Калькулятор: как прописать логику для всех кнопок
Как создать простой калькулятор (не инженерный), наподобие того, что есть у всех в стандартных приложениях? Я уже создала сам калькулятор...

Событие нажатия на button для всех элементов-кнопок
Принцип я в общем-то понимаю. Надо взять все контролируемые кнопки на форме и добавить к ним событие нажатия на кнопку, но не понимаю как...

Создать массив кнопок, для каждой кнопок будет одинаковый обработчик
Всем привет! Нужна помощь в реализации такой задачи. Нужно создать массив кнопок, для каждой кнопок будет одинаковый обработчик...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Новые блоги и статьи
Модель здравосоХранения 6. ESG-повестка и устойчивое развитие; углублённый анализ кадрового бренда
anaschu 31.03.2026
В прикрепленном документе раздумья о том, как можно поменять модель в будущем
10 пpимет, которые всегда сбываются
Maks 31.03.2026
1. Чтобы, наконец, пришла маршрутка, надо закурить. Если сигарета последняя, маршрутка придет еще до второй затяжки даже вопреки расписанию. 2. Нaдоели зима и снег? Не надо переезжать. Достаточно. . .
Перемещение выделенных строк ТЧ из одного документа в другой
Maks 31.03.2026
Реализация из решения ниже выполнена на примере нетипового документа "ВыдачаОборудованияНаСпецтехнику" с единственной табличной частью "ОборудованиеИКомплектующие" разработанного в конфигурации КА2. . . .
Functional First Web Framework Suave
DevAlt 30.03.2026
Sauve. IO Апнулись до NET10. Из зависимостей один пакет, работает одинаково хорошо как в режиме проекта так и в интерактивном режиме. из сложностей - чисто функциональный подход. Решил. . .
Автоматическое создание документа при проведении другого документа
Maks 29.03.2026
Реализация из решения ниже выполнена на нетиповых документах, разработанных в конфигурации КА2. Есть нетиповой документ "ЗаявкаНаРемонтСпецтехники" и нетиповой документ "ПланированиеСпецтехники". В. . .
Настройка движения справочника по регистру сведений
Maks 29.03.2026
Решение ниже реализовано на примере нетипового справочника "ТарифыМобильнойСвязи" разработанного в конфигурации КА2, с целью учета корпоративной мобильной связи в коммерческом предприятии. . . .
Автозаполнение реквизита при выборе элемента справочника
Maks 27.03.2026
Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2. При выборе "Спецтехники" (Тип Справочник. Спецтехника), заполняется. . .
Сумматор с применением элементов трёх состояний.
Hrethgir 26.03.2026
Тут. https:/ / fips. ru/ EGD/ ab3c85c8-836d-4866-871b-c2f0c5d77fbc Первый документ красиво выглядит, но без схемы. Это конечно не даёт никаких плюсов автору, но тем не менее. . . всё может быть. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru