В классе пользовательского управления у меня есть этот код, реагирующий на нажатия кнопок. Код должен сопоставлять тег кнопки переключения с идентичным тегом другого пользовательского элемента управления, чтобы кнопка могла включать и выключать видимость другого пользовательского элемента управления. Соответствующий элемент управления должен храниться в части IF, чтобы также использоваться в части ELSE. Поскольку «control» является локальным для цикла foreach, я создал переменную, в которую нужно скопировать «control». Но это не работает. «lastcontrol» всегда остается нулевым, когда код обрабатывается после строки, в которую я копирую «control». Предложения?
private void ToggleBtnEvent(System.Windows.Forms.CheckBox sender)
{
var currtab = tabControl1.SelectedTab;
var btnClicked = ((System.Windows.Forms.CheckBox)sender).Parent as TestWinForms.CustomControls.BtnToggle1;
System.Windows.Forms.Control lastControl = null;
if (btnClicked.checkBox1.Checked)
{
btnClicked.checkBox1.Text = "";
var cntr = 0;
//var help = 0;
foreach (System.Windows.Forms.Control control in currtab.Controls)
{
//help = control.Location.Y / 35;
if ((string)btnClicked.Tag == (string)control.Tag)
{
tabPage1.Controls.Remove(control);
lastControl = control;
}
cntr++;
}
}
else if (!btnClicked.checkBox1.Checked)
{
btnClicked.checkBox1.Text = "Hide";
Debug.WriteLine($"{lastControl.Name}");
if (lastControl != null) tabPage1.Controls.Add(lastControl);
}
}
Подробнее здесь: https://stackoverflow.com/questions/798 ... reach-loop
Как получить соответствующий элемент управления из цикла foreach? ⇐ C#
Место общения программистов C#
-
Anonymous
1762763098
Anonymous
В классе пользовательского управления у меня есть этот код, реагирующий на нажатия кнопок. Код должен сопоставлять тег кнопки переключения с идентичным тегом другого пользовательского элемента управления, чтобы кнопка могла включать и выключать видимость другого пользовательского элемента управления. Соответствующий элемент управления должен храниться в части IF, чтобы также использоваться в части ELSE. Поскольку «control» является локальным для цикла foreach, я создал переменную, в которую нужно скопировать «control». Но это не работает. «lastcontrol» всегда остается нулевым, когда код обрабатывается после строки, в которую я копирую «control». Предложения?
private void ToggleBtnEvent(System.Windows.Forms.CheckBox sender)
{
var currtab = tabControl1.SelectedTab;
var btnClicked = ((System.Windows.Forms.CheckBox)sender).Parent as TestWinForms.CustomControls.BtnToggle1;
System.Windows.Forms.Control lastControl = null;
if (btnClicked.checkBox1.Checked)
{
btnClicked.checkBox1.Text = "";
var cntr = 0;
//var help = 0;
foreach (System.Windows.Forms.Control control in currtab.Controls)
{
//help = control.Location.Y / 35;
if ((string)btnClicked.Tag == (string)control.Tag)
{
tabPage1.Controls.Remove(control);
lastControl = control;
}
cntr++;
}
}
else if (!btnClicked.checkBox1.Checked)
{
btnClicked.checkBox1.Text = "Hide";
Debug.WriteLine($"{lastControl.Name}");
if (lastControl != null) tabPage1.Controls.Add(lastControl);
}
}
Подробнее здесь: [url]https://stackoverflow.com/questions/79812582/how-to-get-the-matching-control-out-of-the-foreach-loop[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия