Я хочу удалить определенный элемент управления пользователя с панели. Сейчас я использую цикл foreach для управления пользовательским элементом управления.Как удалить() конкретный элемент управления пользователя из панели управления в C#?
foreach (CTRL.box bx in RightPanel.Controls.OfType<CTRL.box>())
{
bx.Dispose();
}
Но он не работает должным образом. при проверке в google я нахожу код ниже.
while(tabControlToClear.Controls.Count > 0)
{
var tabPage = tabControlToClear.Controls[0];
tabControlToClear.Controls.RemoveAt(0);
tabPage.Dispose();
// Clear out events.
foreach (EventHandler subscriber in tabPage.Click.GetInvocationList())
{
tabPage.Click -= subscriber;
}
}
Я пытаюсь это сделать, но для меня это конкретный элемент управления пользователями, которым я должен распоряжаться. они являются другими элементами управления пользователями, которые должны быть необходимы в моей форме. В целом я хочу распоряжаться box Пользовательский контроль из моей формы.
while (RightPanel.Controls.OfType<CTRL.box>().Count() > 0)
{
var panel = RightPanel.Controls.OfType<CTRL.box>()[0];//Here i am getting error "Cannot apply indexing with [] to an expression of type 'System.Collections.Generic.IEnumerable<Project_Server.CTRL.box>'"
}
Может кто-нибудь помочь мне исправить эту ошибку.
'IEnumerable' интерфейс не указывает свойство индексатора. Есть ли несколько элементов управления CTRL.box? Если да, можете ли вы идентифицировать их во время выполнения каким-то свойством? –
CoolBots