powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Как использ. Bind() (two way databinding) и typed DataSet
1 сообщений из 1, страница 1 из 1
Как использ. Bind() (two way databinding) и typed DataSet
    #33923226
SlavaTT
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добрый день,

Я использую FormView и ObjectDataSource в котором указаны методы Select и Update TableAdapter-а.
Я хочу свойства конролов, например Text, привязать к данным например Text='<%# Bind("MyField") %>'
Но если в MyField — Null, то свойство typed DataRow.MyField вызывает исключение.
Я стал проверять на null (((MemberDataSet.MemberRow)Container.DataItem).IsMyFieldNull()) перед тем как вызвать Bind(), но теперь страница не компилируется, ошибка "The name 'Bind' does not exist in the current context"
(Как я узнал Bind() не работает если его подставить в выражение)
Мне нужно иногда не только проверить на null, но и изменить значение поля перед тем как его присвоить свойству контрола. Например есть CheckBox и мне надо Checked присвоить значение поля БД char(1) со значениями Y — true /N — false.
Приходится использовать Eval("MyField") который работает с выражениями. Так-как FormView передает в UpdateCollection ObjectDataSource'a Null-ы (поскольку нету Bind()) приходится вручную находить контролы в темплете FormView, получать из них значения и потом самому вызвать TableAdapter.Update()... и получается дуже некрасивый код.

TextBox tb = (TextBox)fvMemberFields.FindControl("tbBusinessPhone") ..........

Кто знает сделать по нормальному и обойти эту проблему с Bind() и выражениями ???

Спасибо

Слава
...
Рейтинг: 0 / 0
1 сообщений из 1, страница 1 из 1
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Как использ. Bind() (two way databinding) и typed DataSet
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]