Модераторы: Partizan, gambit

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Видимость объектов, Forms 
:(
    Опции темы
bankuss
Дата 27.3.2006, 11:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 396
Регистрация: 26.3.2004

Репутация: нет
Всего: 4



Есть на форме листбокс, значит внутри класса Form1 это бокс прекрасно видится и с ним можно работать.
Но потребовалось сделать класс. Из этого класса нужно обратиться к этому листбоксу. В этом классе листбокс не виден, что сделать? В книжках про это как то скупо написано... методом "научного тыка" ничего не получается smile а ведь наверняка все просто...
PM MAIL   Вверх
ivashkanet
Дата 27.3.2006, 11:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Кодю потиху
****


Профиль
Группа: Участник Клуба
Сообщений: 3684
Регистрация: 23.2.2006
Где: Гомель, Беларусь

Репутация: 47
Всего: 149



А какой тип доступа к ListBox, наверняка private.
Поставь его в public.
PM MAIL WWW ICQ   Вверх
_hunter
Дата 27.3.2006, 11:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 8564
Регистрация: 24.6.2003
Где: Europe::Ukraine:: Kiev

Репутация: 2
Всего: 98



Form1.листБокс?


--------------------
Tempora mutantur, et nos mutamur in illis...
PM ICQ   Вверх
bankuss
Дата 27.3.2006, 11:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 396
Регистрация: 26.3.2004

Репутация: нет
Всего: 4



ivashkanet, ставил в паблик! эти способы были проверены в первую очередь smile но без результатно..
PM MAIL   Вверх
_hunter
Дата 27.3.2006, 11:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 8564
Регистрация: 24.6.2003
Где: Europe::Ukraine:: Kiev

Репутация: 2
Всего: 98



bankuss, как я писал делал?


--------------------
Tempora mutantur, et nos mutamur in illis...
PM ICQ   Вверх
ivashkanet
Дата 27.3.2006, 11:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Кодю потиху
****


Профиль
Группа: Участник Клуба
Сообщений: 3684
Регистрация: 23.2.2006
Где: Гомель, Беларусь

Репутация: 47
Всего: 149



bankuss, приведи код, чтобы мы не гадали smile
PM MAIL WWW ICQ   Вверх
Exception
Дата 27.3.2006, 11:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 4525
Регистрация: 26.12.2004

Репутация: 29
Всего: 186



Кстати, в public ставить не надо. Ставь в internal.
Добавлено @ 11:46
Я надеюсь, ты к нему через instance обращаешься?
PM   Вверх
bankuss
Дата 27.3.2006, 11:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 396
Регистрация: 26.3.2004

Репутация: нет
Всего: 4



Код

public class Сообщение
    {
        public static void Записать(string сообщение)
        {
            Listbox1.Items.Add(сообщение);
        }
    }


ну вот примерно такой код smile Form1.Lixtbox1 - не выходит
вот если сделать экземпляр формы:
Код

Form1 f = new Form1
f.Listbox1.Items.Add("ququ");

то бокс видит, но ведь это экземпляр! а мне надо к базовому классу обратится.
PM MAIL   Вверх
Exception
Дата 27.3.2006, 12:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 4525
Регистрация: 26.12.2004

Репутация: 29
Всего: 186



Не понял. Конечно, нужно через экземпляр - форма - это же конкретный объект! Почему ты не хочешь через экземпляр-то обращаться?
PM   Вверх
_hunter
Дата 27.3.2006, 12:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 8564
Регистрация: 24.6.2003
Где: Europe::Ukraine:: Kiev

Репутация: 2
Всего: 98



в смысле? к какому еще базовому классу?


--------------------
Tempora mutantur, et nos mutamur in illis...
PM ICQ   Вверх
bankuss
Дата 27.3.2006, 12:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 396
Регистрация: 26.3.2004

Репутация: нет
Всего: 4



Код

Form1 f = new  Form1();
f.OutList.Items.Add(сообщение);


ну да, такой код ошибок не выдает. но и в листбоксе ничего не появляется...сообщение уходит куда-то smile
что еще надо сделать...
PM MAIL   Вверх
Exception
Дата 27.3.2006, 12:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 4525
Регистрация: 26.12.2004

Репутация: 29
Всего: 186



Йо-майо smile
Ты вообще когда экземпляр формы первый раз создаешь? Вот к нему и обращайся. А вообще, прежде, чем что-то писать, подучи теорию. Нехорошо так из места в карьер, не понимая базовых принципов работы .NET и Windows Forms в частности.
PM   Вверх
ivashkanet
Дата 27.3.2006, 12:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Кодю потиху
****


Профиль
Группа: Участник Клуба
Сообщений: 3684
Регистрация: 23.2.2006
Где: Гомель, Беларусь

Репутация: 47
Всего: 149



Цитата(bankuss @ 27.3.2006, 12:07 Найти цитируемый пост)
Form1 f = new  Form1();

Ты добавляешь "Сообщение" к новому объекту f, он ни вкое случае не указывает на твою форму (это её (формы) родная сестра-близнец).
Можно при создании твоего класса передать в конструктор твою форму:
Код

public class Сообщение    
    {    
        Form1 F;
        
        public static void Сообщение(Form1 fForm)    
        {    
       F = fForm;
        }
        
        public static void Записать(string сообщение)    
        {    
            F.Listbox1.Items.Add(сообщение);    
        }    
    }

Цитата

Йо-майо
Ты вообще когда экземпляр формы первый раз создаешь? Вот к нему и обращайся. А вообще, прежде, чем что-то писать, подучи теорию. Нехорошо так из места в карьер, не понимая базовых принципов работы .NET и Windows Forms в частности.


Полностью согласен.

Это сообщение отредактировал(а) ivashkanet - 27.3.2006, 12:30
PM MAIL WWW ICQ   Вверх
mr.DUDA
Дата 27.3.2006, 12:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


3D-маньяк
****


Профиль
Группа: Экс. модератор
Сообщений: 8244
Регистрация: 27.7.2003
Где: город-герой Минск

Репутация: 110
Всего: 232



Тут не .NET и WinForms учить надо, а основы ООП... smile


--------------------
user posted image
PM MAIL WWW   Вверх
bankuss
Дата 27.3.2006, 12:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 396
Регистрация: 26.3.2004

Репутация: нет
Всего: 4



Exception, принципов много, сразу все не охватишь. да и книжка под рукой не дает полной картины, хорошо хоть инет есть smile
кстати код приведенный выше не работает.. пару ошибок я отловил. но в целом нужного результат не добился.
Добавлено @ 13:00
mr.DUDA, основы ООП тут ничего не дадут, тут как раз уже тонкости...
PM MAIL   Вверх
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
mr.DUDA
THandle

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.
Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :)
Так же не забывайте отмечать свой вопрос решенным, если он таковым является :)


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, THandle.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Общие вопросы по .NET и C# | Следующая тема »


 




[ Время генерации скрипта: 0.1145 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.