Здравствуйте, Аноним, Вы писали:
А>Здравствуйте, коллеги!
А>Разбор начался со знакомства BLToolkit.Demo, не совсем понятно, "как оно работает?". Что, например, делают свойства ObjectBinder.Object и ObjectBinder.List (просто ищу аналогии с BindingSource).
так же как и биндинг сурс )
1) кладем на ОБ форму
2) задаем свойство ItemType (какой тип объекта будем биндить)
3) указываем визуальным элементам формы биндинги
4) в рантайме задаем биндеру Object\List — это как раз свойства которые отвечают за то, какой объект будет редактироваться
вуаля
Здравствуйте, ili, Вы писали:
ili>так же как и биндинг сурс )
ili>1) кладем на ОБ форму
ili>2) задаем свойство ItemType (какой тип объекта будем биндить)
ili>3) указываем визуальным элементам формы биндинги
ili>4) в рантайме задаем биндеру Object\List — это как раз свойства которые отвечают за то, какой объект будет редактироваться
ili>вуаля
1.
Хотел
рисонуться написать ответ, но про ItemType даже и не сообразил. Посмотрел в исходники... Правильно ли я понимаю, что ItemType нужен для того, чтобы в итоге не использовать Reflection?
2.
И ещё. Не знаю как Анониму, но для меня это оказалось тоже актуально. Однако, немного с другой стороны.
Судя (опять же по исходникам), $.Object – это для связки с одним конкретным экземпляром, а $.List – для списка (грида, например)? Т.е. не как BindingSource, где DataSource/DataMember являются единой точкой для привязки (потому что в устанавливая $.Object, сбрасывается значение List'а)?
ЗЫ. в VS окно Properties чего-то глюкует на ObjectBinder'е. На rsdn по поиску нашёл, что не только у меня... но ответа «на почему?» – там нет).
Здравствуйте, LLI, Вы писали:
LLI>1.
LLI>Хотел рисонуться написать ответ, но про ItemType даже и не сообразил. Посмотрел в исходники... Правильно ли я понимаю, что ItemType нужен для того, чтобы в итоге не использовать Reflection?
м\б... вообще в потрохах пользуется TypeAccessor, ему нужен тип... видеть из-за того что в нетипизированном списке тип фиг узнаешь пользуется ItemType... ну и в дизайнере шоб биндить не руками, а дизайнером ))
LLI>2.
LLI>И ещё. Не знаю как Анониму, но для меня это оказалось тоже актуально. Однако, немного с другой стороны.
LLI>Судя (опять же по исходникам), $.Object – это для связки с одним конкретным экземпляром, а $.List – для списка (грида, например)?
угу... хотя с др. стороны "binder.Object = value" почти тоже самое что и "binder.List = new List<T>() { value }" вот только в последнем случае binder.Object==null
так что св-ва Object\List скорее удобства для
LLI>Т.е. не как BindingSource, где DataSource/DataMember являются единой точкой для привязки (потому что в устанавливая $.Object, сбрасывается значение List'а)?
можно и через DataSource указать... но лично мне как-то привычней пользовать Object\List, чем какой-то уж больно "разплывчатый" DataSource