Форум программистов, компьютерный форум, киберфорум
C# Windows Forms
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.55/11: Рейтинг темы: голосов - 11, средняя оценка - 4.55
3 / 2 / 1
Регистрация: 14.09.2016
Сообщений: 501
.NET 4.x

TextBox[], Label[]. Как их сделать глобальными?

13.09.2018, 15:11. Показов 2300. Ответов 8
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
В private void Knopka_Click(object sender, EventArgs e) есть такие массивы:

C#
1
2
3
4
TextBox[] questions = { textBox2, textBox3, textBox4, textBox5, textBox6, textBox7, textBox8, textBox9, textBox10, textBox11 };
            TextBox[] answers = { textBox12, textBox13, textBox14, textBox15, textBox16, textBox17, textBox18, textBox19, textBox20, textBox21 };
            Label[] lquestions = { label1, label2, label3, label4, label5, label6, label7, label8, label9, label10 };
            Label[] lanswers = { label11, label12, label13, label14, label15, label16, label17, label18, label19, label20 };
Они работают хорошо, но они работаю только для этой кнопки, а у меня в форме есть 2 кнопки и чтобы работало во второй кнопке эти массивы, надо их скопировать и вставить во вторую кнопку. Но это же очень плохо, ибо если я чтото изменю в массиве так придется и во второй опять изменять, но если я эти массивы перетащу сюда:
C#
1
2
3
4
5
6
7
8
9
 public partial class Form2 : Form
    {
 
 TextBox[] questions = { textBox2, textBox3, textBox4, textBox5, textBox6, textBox7, textBox8, textBox9, textBox10, textBox11 };
        TextBox[] answers = { textBox12, textBox13, textBox14, textBox15, textBox16, textBox17, textBox18, textBox19, textBox20, textBox21 };
        Label[] lquestions = { label1, label2, label3, label4, label5, label6, label7, label8, label9, label10 };
        Label[] lanswers = { label11, label12, label13, label14, label15, label16, label17, label18, label19, label20 };
 
}
Сразу дает куча ошибок:
Серьезность Код Описание Проект Файл Строка Состояние подавления
Ошибка CS0236 Инициализатор поля не может обращаться к нестатическому полю, методу или свойству "Form2.textBox2". tests
Серьезность Код Описание Проект Файл Строка Состояние подавления
Ошибка CS0236 Инициализатор поля не может обращаться к нестатическому полю, методу или свойству "Form2.textBox3". tests
И их миллион таких...

Как сделать, чтобы когда я их глобально так выставляю, ошибок не было!
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
13.09.2018, 15:11
Ответы с готовыми решениями:

Как сделать вывод данных из datagridview в textbox либо label::?
Как сделать вывод данных из datagridview в textbox либо label::? пытался так но выдает ошибку private void...

Как сделать, чтобы всё, что писали в TextBox на одной форме перенеслось в Label на другой?
Там вот на 4 форме у меня есть 2 текстбокса и мне нужно то что пишут в них , переходило на 5 форму в лейбол 1 и второй

Как сделать, чтобы когда пишешь с нескольких textbox в один label, инфа не удалялась бы, а добавлялась
private void textBox2_TextChanged(object sender, EventArgs e) { label.Text = textBox2.Text; } ...

8
Эксперт .NET
 Аватар для Rius
13121 / 7681 / 1675
Регистрация: 25.05.2015
Сообщений: 23,430
Записей в блоге: 14
13.09.2018, 15:36
Определить как приватные поля класса формы. А инициализировать в её конструкторе.
0
3 / 2 / 1
Регистрация: 14.09.2016
Сообщений: 501
13.09.2018, 19:56  [ТС]
Цитата Сообщение от Rius Посмотреть сообщение
Определить как приватные поля класса формы. А инициализировать в её конструкторе.
Звучит жестко
Как их определить, можете написать код, я с классами ещё не работал ни разу

Добавлено через 4 часа 14 минут
Больше ни кто не знает?
0
Эксперт .NET
 Аватар для Rius
13121 / 7681 / 1675
Регистрация: 25.05.2015
Сообщений: 23,430
Записей в блоге: 14
13.09.2018, 20:00
Т.е. за 4 прошедших часа вы не попытались найти ответ самостоятельно?..
C#
1
2
3
4
5
6
7
8
9
10
public partial class Form1 : Form
{
    private Label[] _labels;
 
    public Form1()
    {
        InitializeComponent();
 
        this._labels = { this.label1, this.label2, this.label3, this.label4, this.label5 };
        ...
1
3 / 2 / 1
Регистрация: 14.09.2016
Сообщений: 501
13.09.2018, 20:02  [ТС]
Цитата Сообщение от Rius Посмотреть сообщение
за 4 прошедших часа вы не попытались найти ответ самостоятельно?..
Я пытался сделай класс и туда там засунуть ну кароче не получилось, это самая сложная тема в программировании
0
13.09.2018, 20:04

Не по теме:

Цитата Сообщение от Terminator004 Посмотреть сообщение
это самая сложная тема в программировании
Может я вас расстрою, но это - элементарщина. :)

0
3 / 2 / 1
Регистрация: 14.09.2016
Сообщений: 501
13.09.2018, 20:19  [ТС]
Цитата Сообщение от Rius Посмотреть сообщение
this._labels = { this.label1, this.label2, this.label3, this.label4, this.label5 };
А почему он выдает ошибки на запятые и на { }?


Ошибка CS1525 Недопустимый термин "{" в выражении
Ошибка CS1002 Требуется ";".
Ошибка CS1002 Требуется ";".
Ошибка CS1513 Требуется "}"
Ошибка CS1002 Требуется ";".
Ошибка CS1513 Требуется "}"
Ошибка CS1002 Требуется ";".
Ошибка CS1513 Требуется "}"
Ошибка CS1002 Требуется ";".
Ошибка CS1513 Требуется "}"
Ошибка CS1002 Требуется ";".
Ошибка CS1513 Требуется "}"
Ошибка CS1002 Требуется ";".
Ошибка CS1513 Требуется "}"
Ошибка CS1002 Требуется ";".
Ошибка CS1513 Требуется "}"
Ошибка CS1002 Требуется ";".
Ошибка CS1513 Требуется "}"
Ошибка CS1002 Требуется ";".
Ошибка CS1513 Требуется "}"
Ошибка CS1002 Требуется ";".
0
Эксперт .NET
 Аватар для Даценд
5878 / 4755 / 2939
Регистрация: 20.04.2015
Сообщений: 8,361
13.09.2018, 20:37
Лучший ответ Сообщение было отмечено Terminator004 как решение

Решение

C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
public partial class Form2 : Form
{
 
    TextBox[] questions; //объявляем как поле класса
 
    public Form2()
    {
        InitializeComponent();
        questions = new TextBox[] { textBox2, textBox3, textBox4, ... }; //инициализируем
    }
    
    //...
 
}
2
3 / 2 / 1
Регистрация: 14.09.2016
Сообщений: 501
13.09.2018, 20:55  [ТС]
Даценд, спасибо, теперь ошибок нет!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
13.09.2018, 20:55
Помогаю со студенческими работами здесь

Как сделать объекты TBitmap глобальными для файла?
Есть вот такая штука #include <vcl.h> #pragma hdrstop #include "Unit4.h" ...

Как передать из события TextBox на обработчик имена других TextBox и Label?
Задачка такая: есть несколько рядов TextBox, содержимое их их надо, например, сложить и поместить в соответствующую метку. Делаться это...

Как сделать чтобы при нулевом значении textbox при переходе на другой tabpage label отключался?
Как сделать чтобы при нулевом значении textbox при переходе на другой tabpage label отключался?

Зачем нужно создавать два поля типа textBox и как передать из того же textBox допустим в label
В данной задаче мне не ясно зачем нужно создавать два поля типа textBox. Помимо этого я не понимаю как передать из того же textBox допустим...

Сделать возможным перенос строк в TextBox. Или сделать, чтобы RichTextBox отображал текст неформатированным (как TextBox)
Вот хотел узнать, как сделать так, чтобы RichTextBox отображал текст не форматированным? Или как сделать, чтобы в TextBox при нажатии...


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

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
Новые блоги и статьи
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
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru