Начала привязки данных в WinFx

в winfx существует и развитая

Итак, вы познакомились с парой простых программных приложений WinFx, но с данными в них ничего не происходило. В WinFx существует и развитая модель установки привязанных к данным элементов управления. Ее работа несколько отличается от того, что имеет место в Windows

Forms, и рассчитана на достижение большей гибкости и написание меньшего объема кода. Элементы WinFx ориентируются на концепцию контекста привязки данных, который автоматически передается дочерним элементам: из приложения к нижележащим оконным объектам, и далее вниз к дочерним элементам управления. Поэтому когда у вас есть источник данных, который нужно привязать к нескольким элементам управления, возможно, даже в различных окнах, вы можете организовать контекст данных, который позволит вам инициализировать и установить источник данных в одном месте, и будет автоматически передан вниз по каскадам дерева элементов к любым дочерним элементам, которые не устанавливают явным образом собственный контекст. Если вы внимательно прочитали главы этой книги, это должно вам кое-что напоминать. Подход к привязке в WinFx несколько сходен с работой объектов BindingSource В Windows Forms. Они представляют собой своего рода комплексный пункт для данных, к которым может быть привязано несколько элементов управления. Однако есть несколько явных отличий, как в способе объявления и инициализации привязок, так и в механизме их передачи другим элементам. В Windows Forms, чтобы создать ассоциацию между конкретным источником привязки и элементом управления, вы должны явным образом установить в свойстве DataSource Элемента управления ссылку на BindingSource, Либо добавить к коллекции DataBindings Элемента управления соответствующий объект Binding. Затем вы специфицируете еще и путь внутри источника данных к тому компоненту, к которому вы хотите привязаться. В случае привязок WinFx вам нужно только указать желаемый путь внутри контекста данных, а элемент управления автоматически воспримет контекст данных, установленный в его родительском дереве элементов.

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *