вопрос по BindingSource
От: AgulAga  
Дата: 30.03.09 11:25
Оценка:
Есть простой пример с bindingSource
с 1й формы передаем на вторую (Dialog) форму данные.

примерно такой пример http://msdn.microsoft.com/en-us/library/ms404320.aspx


Вот код


public Form2(BindingSource dataSource)
{
   InitializeComponent();
   BS1 = dataSource;
  textBox1.DataBindings.Add("Text", BS1, "OrdrNum", true, DataSourceUpdateMode.OnPropertyChanged);
  }


Если прописать ручками textboxу биндинг то все работает.


а если убираю эту строчку
textBox1.DataBindings.Add("Text", BS1, "OrdrNum", true, DataSourceUpdateMode.OnPropertyChanged);




но делаю привязку "визуально" в свойствах то ничего не происходит. Данные не "прибиндились".

но если я делаю визуально и оставляю эту строчку, то C# ругается что
Два связывания в коллекции привязываются к одному свойству.

почему не работает в случае с "визуальным" DataBinding?
Не хочу писать к каждому элементу код привязки. Хочу визуально это делать.


спасибо.

30.03.09 23:57: Перенесено модератором из '.NET' — TK
Re: вопрос по BindingSource
От: Аноним  
Дата: 01.04.09 04:01
Оценка:
Здравствуйте, AgulAga, Вы писали:



AA>public Form2(BindingSource dataSource)

AA>{
AA> InitializeComponent();
AA> BS1 = dataSource;
AA> textBox1.DataBindings.Add("Text", BS1, "OrdrNum", true, DataSourceUpdateMode.OnPropertyChanged);
AA> }


dataSource который ты передаешь в форму это уже не тот объект который ты создаешь в дизайнере, а ссылка на другой объект.

А для того чтобы,компилятор он не ругался
public Form2(BindingSource dataSource)
{
InitializeComponent();
BS1 = dataSource;
textBox1.DataBindings.Clear();
textBox1.DataBindings.Add("Text", BS1, "OrdrNum", true, DataSourceUpdateMode.OnPropertyChanged);
}
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.