Форум программистов, компьютерный форум, киберфорум
C# Windows Forms
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.80/5: Рейтинг темы: голосов - 5, средняя оценка - 4.80
 Аватар для Newbier
0 / 0 / 0
Регистрация: 29.12.2015
Сообщений: 61
.NET 4.x

Работа с классами

29.12.2015, 15:25. Показов 1053. Ответов 6
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте, только начал изучать C# и у меня очень стрёмные вопросы.


В рамках образования писал программу на WinForm и решил основной функционал вынести отдельный самописный класс, по структуре примерно так:

namespace ping {
class MyPing {
public void MethodPing(){
Ну и тут всякие бла-бла-бла с циклами, полями и элементами формы
}}}

У меня проблема именно с этими именами форм, по тому что про каждый из них пишут что "Они не существуют в контексте".

Как в таких случаях поступают отцы ООП?

Кому интересно, вот листинг:
Кликните здесь для просмотра всего текста
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
namespace ping
{
    class MyPing
    {
public void MethodPing(){
    for (int i = 0; i< 4; ++i)
        {
            using (Ping p = new Ping())
            {
                IPAddress address = IPAddress.Parse(txtbTargetIP.Text);
        PingReply reply = p.Send(address);
 
        //  if (reply.Status == IPStatus.Success) {
        txtbOut.Text += reply.Address.ToString() + " ";
                        txtbOut.Text += reply.Status.ToString() + " ";
                        txtbOut.Text += reply.RoundtripTime.ToString() + "\r\n";
 
                    // } }
                }
            }
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
29.12.2015, 15:25
Ответы с готовыми решениями:

Работа с классами
Есть классы: пользователь, файл, уровень доступа к файлу. Примечания: 1) В каждом файле хранится список...

Работа с классами "Студент"
Ребят, помогите как-то сделать задание: Сделать класс &quot;Студент&quot; имеющий поля Имя пол возраст группа создать форму для...

работа с классами
public partial class UserControl3 : UserControl { public delegate void downDelegate(); public event downDelegate...

6
Хитрая блондиночка $)
 Аватар для Hikari
1472 / 988 / 399
Регистрация: 21.12.2015
Сообщений: 3,785
29.12.2015, 15:30
Цитата Сообщение от Newbier Посмотреть сообщение
txtbOut.Text
Это не в контексте, да?
Ты бы лучше сделал в этом класса свойство типа Edit или как там тип у txtbOut, и уже с его помошью связать компонент на форме с этим классом
1
 Аватар для tarasalk
1992 / 1216 / 440
Регистрация: 13.06.2013
Сообщений: 4,115
29.12.2015, 15:45
Цитата Сообщение от Newbier Посмотреть сообщение
Как в таких случаях поступают отцы ООП?
Отцы изолируют класс от формы. Внешние зависимости надо передавать параметром в конструктор или в метод. Причем если нужно только текстовое значение, то я бы его и передавал, а не весь контрол.
1
 Аватар для Newbier
0 / 0 / 0
Регистрация: 29.12.2015
Сообщений: 61
29.12.2015, 15:47  [ТС]
Hikari, да, ещё txtbTargetIP.

Я не понял. Edit это тип класса или чего? Я погуглил, но ответат не нашёл.

Добавлено через 33 секунды
tarasalk, кажется понял. Спасибо за ответ.
0
911 / 796 / 329
Регистрация: 08.02.2014
Сообщений: 2,391
29.12.2015, 15:50
тебе нужно все поля используемые в форме вынести как свойства класса и потом при объявлении класса заполнить эти поля пример:
MyPing ping = new MyPing();
ping.Названиеполя = txtbOut.Text;
.... и т.д
А в самой функции уже использовать эти поля
0
 Аватар для tarasalk
1992 / 1216 / 440
Регистрация: 13.06.2013
Сообщений: 4,115
29.12.2015, 16:19
Цитата Сообщение от SeIZVeIZ Посмотреть сообщение
тебе нужно все поля используемые в форме вынести как свойства класса и потом при объявлении класса заполнить эти поля пример:
MyPing ping = new MyPing();
ping.Названиеполя = txtbOut.Text;
.... и т.д
А в самой функции уже использовать эти поля
Явный пример как не надо делать.
1) зачем выносить все поля формы в класс, если нужен только один.
2) зачем для передачи ключевых параметров использовать свойства? видимо чтобы однажды забыть прописать его и при использовании метода получить фатал еррор.
0
911 / 796 / 329
Регистрация: 08.02.2014
Сообщений: 2,391
29.12.2015, 16:29
Цитата Сообщение от tarasalk Посмотреть сообщение
Явный пример как не надо делать.
1) зачем выносить все поля формы в класс, если нужен только один.
2) зачем для передачи ключевых параметров использовать свойства? видимо чтобы однажды забыть прописать его и при использовании метода получить фатал еррор.
1) У него как-минимум 2
2) судя из результата ему нужны эти данные потом где-то
Code
1
txtbOut.Text +=
либо делать полями, либо передать в функцию и делать у неё возвращающее значение.

описывал метод по его коду
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
29.12.2015, 16:29
Помогаю со студенческими работами здесь

работа с классами
Здравствуйте. Пишу код class Class1 { public void about_class() { ...

Работа с классами
Всем доброго времени суток. Вообщем есть код: public static void server_info() { string ss =...

работа с классами и наследование в С#
Ребят,не нашел подходящей темы.... нужна помощь в решении задачи... на С# я чето вошел в ступор....был бы признателен за помощь вот ...

Работа с несколькими классами
Здравствуйте, помогите доработать создание настроек, есть неопределенное количество единиц оборудования, и каждому из них нужно присвоить...

Доступ между классами
Всем добрый день. У меня есть программа, на примере которой нас начали учить ООП (в коде часть проги). Значить есть кнопка, по нажатие...


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

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Новые блоги и статьи
1С: Контроль уникальности заводского номера
Maks 23.03.2026
Алгоритм контроля уникальности заводского (или серийного) номера на примере документа выдачи шин для спецтехники с табличной частью. Данные берутся из регистра сведений, по которому настроено. . .
Хочу заставить корпорации вкладываться в здоровье сотрудников: делаю мат модель здравосохранения
anaschu 22.03.2026
e7EYtONaj8Y Z4Tv2zpXVVo https:/ / github. com/ shumilovas/ med2. git
1С: Программный отбор элементов справочника по группе
Maks 22.03.2026
Установка программного отбора элементов справочника "Номенклатура" из модуля формы документа. В качестве фильтра для отбора справочника служит группа номенклатуры. Отбор по наименованию группы. . .
Как я обхитрил таблицу Word
Alexander-7 21.03.2026
Когда мигает курсор у внешнего края таблицы, и нам надо перейти на новую строку, а при нажатии Enter создается новый ряд таблицы с ячейками, то мы вместо нервных нажатий Энтеров мы пишем любые буквы. . .
Krabik - рыболовный бот для WoW 3.3.5a
AmbA 21.03.2026
без регистрации и смс. Это не торговля, приложение не содержит рекламы. Выполняет свою непосредственную задачу - автоматизацию рыбалки в WoW - и ничего более. Однако если админы будут против -. . .
1С: Программный отбор элементов справочника по значению перечисления
Maks 21.03.2026
Установка программного отбора элементов справочника "Сотрудники" из модуля формы документа. В качестве фильтра для отбора служит значение перечислений. / / Событие "НачалоВыбора" реквизита на форме. . .
Переходник USB-CAN-GPIO
Eddy_Em 20.03.2026
Достаточно давно на работе возникла необходимость в переходнике CAN-USB с гальваноразвязкой, оный и был разработан. Однако, все меня терзала совесть, что аж 48-ногий МК используется так тупо: просто. . .
Оттенки серого
Argus19 18.03.2026
Оттенки серого Нашёл в интернете 3 прекрасных модуля: Модуль класса открытия диалога открытия/ сохранения файла на Win32 API; Модуль класса быстрого перекодирования цветного изображения в оттенки. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru