Сдам Сам

ПОЛЕЗНОЕ


КАТЕГОРИИ







Объекты привязывающие данные (BindingContext)





Иерархия классов объектов, обеспечивающих привязку данных, приведена на рис. 3. Объекты, используемые для привязки, выделены серым.

 

Рис.3. Иерархия классов объектов, обеспечивающих привязку данных.

 

Свойство DataBinding – это экземпляр класса ControlBindingsCollection

textBox1.DataBindings.Add("Text", ds, "Products.ProductName");

Эта строка привязывает объект Binding к ControlBindingsCollection. Метод Add() создает новый экземпляр объекта Binding на основании параметра, переданного методу, и добавляет его к коллекции привязок.

BindingContext

Каждая форма Windows Form имеет свойство BindingContext. Объект BindingContext включают коллекцию экземпляров BindingManagerBase (рис. 4). Эти экземпляры создаются и добавляются к объекту диспетчера привязки в момент связывания элемента управления с данными.

Рис. 4.

 

BindingContext может включать несколько источников данных, помещенных в оболочку либо CurrencyManager, либо PropertyManager. Решение о том, какой именно класс использовать, основывается на самом источнике данных.

Если источник данных включает список элементов, такой как DataTable, DataView, или же любой объект, реализующий интерфейс IList, применяется CurrencyManager. CurrencyManager может поддерживать текущую позицию внутри источника данных. Если же источник данных возвращает только одно значение, в BindingContext помещается PropertyManager.

Для конкретного источника данных CurrencyManager или PropertyManager создается лишь однажды. Если два текстовых поля привязаны к строке DataTable, в контексте привязки будет создан только один CurrencyManager.

Каждый элемент управления, добавленный к форме, связывается с менеджером привязки формы, так что все элементы управления разделяют один и тот же его экземпляр. Когда элемент управления создается, его свойство BindingContext равно null. Когда же он добавляется к коллекции Controls формы, его свойство BindingContext устанавливается равным BindingContext формы.



Рис. 5. Добавление к Сontroll объекта Binding

Рис. 5 примерно иллюстрирует, что происходит, когда объект Binding добавляется к Control. Привязка устанавливает связь между элементом управления и источником данных, которая поддерживается внутри BindingContext формы (или самого элемента управления). Изменение внутри источника данных отображаются в элементе управления, как если бы они были выполнены в нем самом.

Binding

Этот класс связывает свойство элемента управления с членом источника данных. Когда член изменяется, свойство элемента управления обновляется, чтобы отобразить это изменение. Также верно противоположное – если обновляется текст в текстовом поле, это изменение отображается в источнике данных.

Привязка может быть выполнена из любого столбца на любое свойство элемента управления.

CurrencyManager и PropertyManager

При создании объекта Binding, также создаются соответствующие объекты CurrencyManager и PropertyManager, предоставляя возможность первоначальной привязки данных источника. Назначение этого класс – определять позицию текущей записи внутри источника данных, а также координировать все первоначальные привязки при изменении текущей записи.

Схемы XML.

XML – переносимый и богатый возможностями способ хранения и представления данных, который не зависит от платформы. Кроме того, формат документов XML – текстовый, что позволяет делать передачу XML-данных между приложениями значительно проще, чем в случае представления данных в двоичном формате.

ADO.NET разработана таким образом, чтобы иметь возможность интегрировать с XML. ADO.NET делает возможным просто конвертировать данные из связанных таблиц в XML-формат, и наоборот – XML-документы переводить в таблицы и устанавливать связи между ними.

ADO.NET позволяет:

· считывать данные из DataSet в XML-формат. Это полезно, когда необходимо послать данные другим приложениям, возможно даже работающими под другими платформами;

· заполнять объекты DataSet данными из XML;

· создавать XML-схемы;

· загружать XML-данные из файла или из любого потока, после чего манипулировать ими, используя DataSet;

· создавать объекты DataSet на основе существующих схем.

3.1 Пример использования XML-формата для взаимодействия с XML Web-службами:

· Клиентское приложение вызывает XML Web-службу, которая запрашивает данные из источника и формирует DataSet.

· После этого XML Web-служба конвертирует данные в XML-формат и возвращает XML-данные клиенту.

· Клиентское приложение может оперировать как XML-данными, так и загрузить их в DataSet.

· После окончания манипулирования данными клиентское приложение посылает их XML Web-службе, которая преобразует их в DataSet и обновляет информацию в источнике данных.









Не нашли то, что искали? Воспользуйтесь поиском гугл на сайте:


©2015- 2018 zdamsam.ru Размещенные материалы защищены законодательством РФ.