Добавление поддержки привязки данных к специальному элементу управления

начнем с простейшей задачи предоставим

Мы будем добавлять различные функции элемента управления постепенно, как это обычно и делается при разработке подобных элементов. Начнем с простейшей задачи — предоставим пользователям вашего элемента управления возможность указать источник и компонент данных для привязки инкапсулированной сетки к набору данных. Поскольку сетка DataGridview Является дочерним элементом вашего элемента управления, она объявляется как закрытый элемент его класса. Это относится по умолчанию и к любым другим элементам управления, которые вы перетаскиваете в рабочее пространство конструктора для формы или элемента управления. Объявление можно при желании изменить посредством свойства Modifiers В окне Properties Или путем прямого редактирования кода, генерированного конструктором. Вообще говоря, следует избегать непосредственной модификации генерируемого кода, так как ваши изменения могут быть переписаны в результате других операций в конструкторе; именно поэтому в Visual Studio 2005 весь этот код и размещается в отдельном файле неполного класса. В качестве одного из способов поддержки привязки данных к сетке в пользовательском элементе управления можно было бы разрешить пользователям непосредственно обращаться к инкапсулированной сетке и устанавливать ее источник данных. Но в свете предъявляемых к фильтрующей сетке требований это не годится, поскольку весь смысл в том, что мы создаем элемент управления, модифицирующий привязку к сетке в зависимости от значений, получаемых из текстового поля фильтра и из списка полей. Поэтому правильным путем организации привязки данных в вашем специальном пользовательском элементе управления будет имитация API привязки данных, экспонируемого другими привязанными элементами управления. Для отображения табличных данных это означает экспонирование вашим элементом управления свойств DataSource И DataMember, Позволяющих установить его привязку данных. Благодаря инкапсулированному источнику привязки вам не нужно будет самому делать какую-либо неприятную работу по привязке данных — вы просто перепоручаете ее источнику привязки. Продолжая процедуру, начатую в предыдущем разделе, сделайте следующее: Установите в окне Properties свойство DataSource Сетки На источник привязки . Благодаря этому при любом изменении источника данных в источнике привязке сетка будет автоматически обновляться. Теперь вы можете экспонировать в элементе управления свойства DataSource И DataMember, Делегировав их источнику привязки

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

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