|
Модераторы: Partizan, gambit |
|
lankin |
|
||||
Опытный Профиль Группа: Участник Сообщений: 377 Регистрация: 13.12.2006 Репутация: нет Всего: нет |
В общем суть в следующем:
есть некая форма с кнопкой и в ней функция:
по нажатию той кнопки выскакивает окно с textBox - это обычный поисковик. В нем мы вносим какую-то фразу, заводим делегата и вызываем метод основной формы someFunction, передавая ему введенные данные.
вопрос - как мне передать в ту функцию введеную нами вручную строку в поисковике??? |
||||
|
|||||
lankin |
|
|||
Опытный Профиль Группа: Участник Сообщений: 377 Регистрация: 13.12.2006 Репутация: нет Всего: нет |
Или может можно так сделать?
Или может есть вообще другой метод попроще??? Это сообщение отредактировал(а) lankin - 20.8.2008, 16:31 |
|||
|
||||
mihryak |
|
|||
Опытный Профиль Группа: Участник Сообщений: 731 Регистрация: 28.4.2007 Где: С-Пб Репутация: 19 Всего: 36 |
если эти классы - действительно формы, то оба решения плохи
зачем для каких-то вычислений создавать форму? форму показывать надо, она по большому счёту и считать-то ничего считать не должна уметь Добавлено через 10 минут и 6 секунд а вообще твоя задача подходит под паттерн "стратегия" упрощённо он выглядит так:
|
|||
|
||||
mullih |
|
||||||||
Шустрый Профиль Группа: Участник Сообщений: 75 Регистрация: 19.12.2006 Репутация: нет Всего: 2 |
lankin
строкой
ты только создал указатель на метод Чтоб выполнить синхронно необходимо
Сори если не совсем чисто объяснил |
||||||||
|
|||||||||
mihryak |
|
|||
Опытный Профиль Группа: Участник Сообщений: 731 Регистрация: 28.4.2007 Где: С-Пб Репутация: 19 Всего: 36 |
||||
|
||||
lankin |
|
|||
Опытный Профиль Группа: Участник Сообщений: 377 Регистрация: 13.12.2006 Репутация: нет Всего: нет |
О! То, что нужно. Спасибо большое
Добавлено через 2 минуты и 37 секунд Кстати. В чем принципиальная разница между синхронным и асинхронным методами? |
|||
|
||||
Partizan |
|
|||
Let's do some .NET Профиль Группа: Модератор Сообщений: 2828 Регистрация: 19.12.2005 Где: Санкт-Петербург Репутация: 18 Всего: 67 |
lankin,
Это сообщение отредактировал(а) Partizan - 21.8.2008, 10:29 Присоединённый файл ( Кол-во скачиваний: 108 ) 2.JPG 755,49 Kb -------------------- СУВ, Partizan. |
|||
|
||||
lankin |
|
|||
Опытный Профиль Группа: Участник Сообщений: 377 Регистрация: 13.12.2006 Репутация: нет Всего: нет |
Спасибо
|
|||
|
||||
lankin |
|
||||
Опытный Профиль Группа: Участник Сообщений: 377 Регистрация: 13.12.2006 Репутация: нет Всего: нет |
Еще такой вопрос:
я в класе Search создал свойство GetSearchString
Затем в првом классе такую строчку добавил
В итоге что происходит - я вызываю делегатом из класса search метод someFunction() класса First. Далее в этом методе создается объект класса Search и через его свойство узнаем то, что ввели руками при поиске(то, что есть в textBox1). Так вот при обращении к свойству возвращается пустая строка, хотя в textBox1 что-то введено. Почему??? Для нового объекта класса будет будто новая форма создаваться чтоли и тextBox1 там не будет заполнен? Это сообщение отредактировал(а) lankin - 21.8.2008, 16:57 |
||||
|
|||||
mullih |
|
||||||||
Шустрый Профиль Группа: Участник Сообщений: 75 Регистрация: 19.12.2006 Репутация: нет Всего: 2 |
ты создал новый объект и соответсвенно поле result=string.Empty; Передай в параметр текущий объект, либо сделай свойство статическое либо примени фабричный метод для Search либо что еще в зависимости от твоих потребностей (как я понимаю просто строки в someFunction ты кидать не хошь)
|
||||||||
|
|||||||||
lankin |
|
|||
Опытный Профиль Группа: Участник Сообщений: 377 Регистрация: 13.12.2006 Репутация: нет Всего: нет |
mullih, спасибо за подробное и наглядное объяснение
А можно пояснение одно? В частности, что означает this в этой строке:
Что туда передается? |
|||
|
||||
lankin |
|
|||
Опытный Профиль Группа: Участник Сообщений: 377 Регистрация: 13.12.2006 Репутация: нет Всего: нет |
Еще вопрос: если мы заводим в классе Search экземпляр класса First, то значит и у него будут только исходные значения?
|
|||
|
||||
lankin |
|
|||
Опытный Профиль Группа: Участник Сообщений: 377 Регистрация: 13.12.2006 Репутация: нет Всего: нет |
В общем я сделал все иначе:
работает. получается, что делегатом вызывается не функция родительского класса, а текущего класса, просто из родительского мы передали текущий объект(Grid). Так может и нафиг делегат не нужен? Это сообщение отредактировал(а) lankin - 22.8.2008, 15:10 |
|||
|
||||
mullih |
|
|||
Шустрый Профиль Группа: Участник Сообщений: 75 Регистрация: 19.12.2006 Репутация: нет Всего: 2 |
this это указатель на объект текущего класса.
а не могли вы описать задачу которую надо выполнить и структуру программы может это поможет ответить на вопрос нужен ли делегат |
|||
|
||||
Прежде чем создать тему, посмотрите сюда: | |
|
Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов. Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :) Так же не забывайте отмечать свой вопрос решенным, если он таковым является :) Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, THandle. |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Общие вопросы по .NET и C# | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |