Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
9 / 7 / 2
Регистрация: 06.03.2012
Сообщений: 686

Как написать цикл For

04.05.2023, 10:20. Показов 441. Ответов 6
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Как написать цикл For
Есть такой код
C#
1
2
3
4
5
6
7
8
9
10
            label11.Visible = false;
            label12.Visible = false;
            label13.Visible = false;
            label14.Visible = false;
            label15.Visible = false;
            label16.Visible = false;
            label17.Visible = false;
            label18.Visible = false;
            label19.Visible = false;
            label20.Visible = false;
Как переписать его через цикл For
Пробовал так. Ошибка
C#
1
2
3
4
5
6
 string[] labelNames = Enumerable.Range(1, 100).Select(r => $"label{r}").ToArray();
 
            for (int i = 11; i < 21; i++)
            {
                labelNamesl[i].Visible = false; // Ошибка CS0103  Имя "labelNamesl" не существует в текущем контексте
            }
Прошу помощи.
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
04.05.2023, 10:20
Ответы с готовыми решениями:

Написать цикл for, который выводит на экран в столбец числа от 0.3 до 2.7 с шагом 0.2. Переписать этот цикл в цикл while
Пожалуйста помогите с задачами 1.Написать цикл for, который выводит на экран в столбец числа от 0.3 до 2.7 с шагом 0.2. Переписать этот...

необходимо на паскале написать три программы ( цикл с параметром, цикл с постусловием и цикл с предусловием)
Помогите пожалуйста!!! необходимо на паскале написать три программы ( цикл с параметром, цикл с постусловием и цикл с предусловием). Очень...

необходимо на паскале написать три программы ( цикл с параметром, цикл с постусловием и цикл с предусловием)
Помогите пожалуйста!!! необходимо на паскале написать три программы ( цикл с параметром, цикл с постусловием и цикл с предусловием). Очень...

6
 Аватар для iLinks
800 / 458 / 237
Регистрация: 03.01.2017
Сообщений: 1,339
04.05.2023, 10:29
Цитата Сообщение от vlad56 Посмотреть сообщение
labelNamesl[i]
вы обращаетесь к строке. у строки есть свойство Visible?)
Надо тогда хотябы как то так
C#
1
2
3
            var labels = Enumerable.Range(11, 21 - 11 + 1).Select(r => new System.Windows.Forms.Label() { Name = $"label{r}", Visible = false });
            this.Controls.AddRange(labels);
            Console.ReadLine();
1
2393 / 1922 / 763
Регистрация: 27.07.2012
Сообщений: 5,562
04.05.2023, 10:35
Цитата Сообщение от vlad56 Посмотреть сообщение
Пробовал так
Цитата Сообщение от vlad56 Посмотреть сообщение
Пробовал так
А к чему вы хотели обратиться через имя labelNamesl? Если к своему массиву строк, то это вам ничем не поможет.

Если все ваши Label принадлежат одному родительскому контейнеру, то можно так:
C#
1
2
3
string[] labelNames = Enumerable.Range(1, 100).Select(r => $"label{r}").ToArray();
foreach (var name in labelNames)
    Controls[name].Visible = false;
Но это довольно кривое решение, не говоря уже о том, что имена типа labelXX вообще лучше не импользовать.
1
9 / 7 / 2
Регистрация: 06.03.2012
Сообщений: 686
04.05.2023, 10:57  [ТС]
Выскакивает ошибка

           
Цитата Сообщение от iLinks Посмотреть сообщение
вы обращаетесь к строке. у строки есть свойство Visible?)
Надо тогда хотябы как то так

C#Выделить код

            var labels = Enumerable.Range(11, 21 - 11 + 1).Select(r => new System.Windows.Forms.Label() { Name = $"label{r}", Visible = false });
            this.Controls.AddRange(labels); // Ошибка CS1503 Аргумент 1: не удается преобразовать из "System.Collections.Generic.IEnumerable< System.Windows.Forms.Label>" в "System.Windows.Forms.Control[]".

            Console.ReadLine();
          Как исправить эту ошибку?

Добавлено через 9 минут
Выскакивает исключение
Цитата Сообщение от John Prick Посмотреть сообщение
Если все ваши Label принадлежат одному родительскому контейнеру, то можно так:
C#Выделить код

string[] labelNames = Enumerable.Range(1, 100).Select(r => $"label{r}").ToArray();
foreach (var name in labelNames)
    Controls[name].Visible = false; //System.NullReferenceException: "Ссылка на объект не указывает на экземпляр объекта."
Но это довольно кривое решение, не говоря уже о том, что имена типа labelXX вообще лучше не импользовать.
Как сделать правильно?
0
2393 / 1922 / 763
Регистрация: 27.07.2012
Сообщений: 5,562
04.05.2023, 11:00
Лучший ответ Сообщение было отмечено vlad56 как решение

Решение

Цитата Сообщение от vlad56 Посмотреть сообщение
Как сделать правильно?
Правильнее всего не страдать фигнёй и сделать по уму с самого начала. Закиньте все эти Label на какую-нибудь панель и делайте panel.Visible = false.

Но для любителей страдать вот ещё вариант:
C#
1
2
3
Label[] labels = { label11, label12, label13 /* ... */ };
foreach (var label in labels)
    label.Visible = false;
2
9 / 7 / 2
Регистрация: 06.03.2012
Сообщений: 686
04.05.2023, 11:10  [ТС]
Цитата Сообщение от John Prick Посмотреть сообщение
Правильнее всего не страдать фигнёй и сделать по уму с самого начала. Закиньте все эти Label на какую-нибудь панель и делайте panel.Visible = false.
Сделал так. Работает.
C#
1
groupBox2.Visible = false;
0
2393 / 1922 / 763
Регистрация: 27.07.2012
Сообщений: 5,562
04.05.2023, 11:18
Цитата Сообщение от vlad56 Посмотреть сообщение
Сделал так
Там есть элемент Panel. По умолчанию он никак не виден, но также позволяет группировать элементы на нём.
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
04.05.2023, 11:18
Помогаю со студенческими работами здесь

Как написать цикл?
Вот пример я делаю форму пишу туда адреса через энтер несколько которые надо спарсить это форма для ввода адресов &lt;form...

Как написать цикл?
Я пытаюсь так, но у меня зависает for function in nm GPUPrime-2.0.5.dp-linux; do // для каждой переменной из списка всех функций,...

Как написать цикл?
Помогите пожалуйста

Как написать цикл for i E 1..m
не знаю как решается данная задача как написать цикл for i E 1..m ругается на синтаксис Добавлено через 53 секунды имел ввиду :...

Как написать цикл?
Всем привет, пишу код для задачи СМО (системы массового обслуживания) парикмахерская. Есть количество кресел, количество которых я задаю...


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

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Новые блоги и статьи
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
SDL3 для Web (WebAssembly): Сборка SDL3 и Box2D из исходников с помощью CMake и Emscripten
8Observer8 27.02.2026
Недавно вышла версия 3. 4. 2 библиотеки SDL3. На странице официальной релиза доступны исходники, готовые DLL (для x86, x64, arm64), а также библиотеки для разработки под Android, MinGW и Visual Studio. . . .
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru