DataBinging - Проблема с BindingMamagerBase
От: CrazyBert  
Дата: 21.07.04 12:57
Оценка:
Господа, такая проблема:
есть у меня несколько табов с контролами, которые привязываюцца к одной и той-же таблице в одном и том-же датасете.

Задачка — дисэйблить контрол, если поле к которому он привязан не DBNull.

Пишу так:


txtName.DataBindings.Clear();
...
txtName.DataBindings.Add("Text",ds.T_SOMETABLE,"SOMETABLE_NAME");



Дальше в классе-наследнике от TextBox:


private void OnBindingsChanged(object sender,CollectionChangeEventArgs e)
{

Binding b = DataBindings["Text"];
if(b!=null)
{
BindingMemberInfo bi = b.BindingMemberInfo;
if(b.BindingManagerBase!=null)
{
        ...
}
}
}

Так вот, проблема в том, что я В НЕКОТОРЫХ СЛУЧАЯХ получаю b.BindingManagerBase==null

При всем при том MSDN приводит такой вот пример:


private void PrintPositions()
{
   foreach(Control c in this.Controls)
   {
      foreach(Binding xBinding in c.DataBindings)
      {
         Console.WriteLine
         (c.ToString() + "\t Position: " + 
         xBinding.BindingManagerBase.Position);
      }
   }
}

НЕКОТОРОСТЬ установить не удалось, учитывая то, что контролы на разных табах инициализируются друг за другом совершенно одинаково, и никак друг с другом не связаны, но опять-таки, в одном случае не null,в другом — null.
Бубен сегодня к сожалению оставил дома, а до завтра не терпит

21.07.04 17:56: Перенесено модератором из '.NET' — AndrewVK
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.