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

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> FormView хочу достать контролы из EditTemlate 
:(
    Опции темы
LectorSP
Дата 3.9.2007, 13:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 142
Регистрация: 13.4.2006
Где: г. Минск

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



Подскажите пожалуйста...

У меня есть FormView в нем два шаблона ItemTemplate в котором есть контролы, доступ к ним я получаю через метов FindControl, и EditTemlate там тоже в этом шаблоне я добавляю пару контролов...так вот как мне достучаться до них...именно до тея, который в EditTemlate
--------------------
Трудно жить на свете негритенку Пете, Бьет его по роже  пионер Сережа! Никакими расовыми этническими и религиозными предрассудками я не страдаю!Я за DOT.NET......................ну и за мир во всем мире тоже!
PM MAIL ICQ   Вверх
tol05
Дата 3.9.2007, 15:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


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

Репутация: 34
Всего: 170



дело в том, что твой FormView меняет свое содержимое (то, что ты пытаешься искать через FindControl(), а в реальности - через Controls FormView) в зависимости от своего состояния (обычный режим или режим редактирования).
Т.е. если выбран обычный режим отображения, то коллекция Controls твоего FormView заполняется одними контролами, а если выбран "Edit" - то уже другими. А какими контролами и когда заполняется - это все ты указываешь как раз через Template.
Вступление окончено smile
я сделал пример с FormView и кнопкой, по ее нажатию я пытаюсь найти контрол (записанный в EditTemplate для FormView) через FindControl(). Так вот, если я нажимаю кнопку без входа в "Edit" - то контрола конечно нет. А если сначала на FormView нажать линк "Edit", а потом - кнопку, то он есть.

Надеюсь что объяснил понятно... smile


--------------------
На хорошей работе и сны хорошие снятся.
PM MAIL   Вверх
LectorSP
Дата 3.9.2007, 15:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 142
Регистрация: 13.4.2006
Где: г. Минск

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



А как мне тодгда определить, в каком состоянии находиться мой FormView.....просто мне надо заполнить пару контролов который находяться в EditTamplate, как только я перешел в мод редоктирования.... в какой момент мне необходима искать мой контролы в EditTamplate и присвайвать им значения....?
--------------------
Трудно жить на свете негритенку Пете, Бьет его по роже  пионер Сережа! Никакими расовыми этническими и религиозными предрассудками я не страдаю!Я за DOT.NET......................ну и за мир во всем мире тоже!
PM MAIL ICQ   Вверх
Groff
Дата 3.9.2007, 22:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 51
Регистрация: 31.10.2006
Где: Belarus, Minsk

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



Обрабатывай событие ModeChanged:
Код
public void myFormView_ModeChanged(Object sender, EventArgs e)
{
    if (myFormView.CurrentMode == FormViewMode.Edit)
    {
        Control c = myFormView.FindControl("controlID");
        ...
    }
}


Это сообщение отредактировал(а) Groff - 3.9.2007, 22:24
PM ICQ MSN   Вверх
tol05
Дата 3.9.2007, 22:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


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

Репутация: 34
Всего: 170



LectorSP, FormView.CurrentMode Property может принимать значения:
FormViewMode.Edit 
FormViewMode.Insert 
FormView.ReadOnly 

P.S. Groff, твоего поста не видел.

Это сообщение отредактировал(а) tol05 - 4.9.2007, 07:38


--------------------
На хорошей работе и сны хорошие снятся.
PM MAIL   Вверх
LectorSP
Дата 4.9.2007, 09:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 142
Регистрация: 13.4.2006
Где: г. Минск

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



я так пробовал...не получаеться....котрол не находит...не смотря даже на то, что згружен EditTemplate, и CurrentMode = FormViewMode.Edit и такой код не сработает....



Код

public void myFormView_ModeChanged(Object sender, EventArgs e)
{
    if (myFormView.CurrentMode == FormViewMode.Edit)
    {
        Control c = myFormView.FindControl("controlID");
        ...
    }
}

потому что, когда мы нажимаем на Button c ommandName = "Edit" наступает событие ModeChanged,  CurrentMode = FormViewMode.Edit, но контрол всёравно не находит....потом, когда мы нажимаем Button c CommandName = "Update" вот тогда он контрол находит, но CurrentMode уже равен FormViewMode.ReadOnly, но мне уже поздно.....
--------------------
Трудно жить на свете негритенку Пете, Бьет его по роже  пионер Сережа! Никакими расовыми этническими и религиозными предрассудками я не страдаю!Я за DOT.NET......................ну и за мир во всем мире тоже!
PM MAIL ICQ   Вверх
LectorSP
Дата 6.9.2007, 16:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 142
Регистрация: 13.4.2006
Где: г. Минск

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



И все же, и все же почему, когда переключаю FormView в режи Edit, контролы которые находяться в EditTemplate, я могу достать только через событие FormView.DataBound. Я чего-то явно непонимаю.
--------------------
Трудно жить на свете негритенку Пете, Бьет его по роже  пионер Сережа! Никакими расовыми этническими и религиозными предрассудками я не страдаю!Я за DOT.NET......................ну и за мир во всем мире тоже!
PM MAIL ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
Любитель
Mymik
mr.DUDA

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.

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

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


 




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


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

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