Поделиться через


Пошаговое руководство. Создание иерархического отношения с помощью кэшированного набора данных

Обновлен: Ноябрь 2007

Применение

Сведения, приведенные в данном разделе, относятся только к указанным проектам Visual Studio Tools for Office и версиям Microsoft Office.

Тип проекта

  • Проекты уровня документа

Версия Microsoft Office

  • Выпуск 2007 системы Microsoft Office

  • Microsoft Office 2003

Дополнительные сведения см. в разделе Доступность функций по типам приложений и проектов.

В этом пошаговом руководстве показано создание иерархического отношения на листе и кэширование данных, позволяющее использовать решение в автономном режиме.

В процессе выполнения этого пошагового руководства будут выполнены следующие задачи:

  • Добавление элементов управления на лист.

  • Настройка кэширования данных на листе.

  • Добавление кода, обеспечивающего прокрутку записей.

  • Тестирование проекта.

ms178809.alert_note(ru-ru,VS.90).gifПримечание.

На компьютере могут отображаться имена или расположения некоторых элементов пользовательского интерфейса Visual Studio, отличающиеся от указанных в дальнейших инструкциях. Эти элементы определяются используемой версией Visual Studio и ее параметрами. Дополнительные сведения см. в разделе Параметры Visual Studio.

Обязательные компоненты

Для выполнения этого руководства требуются следующие компоненты:

  • Visual Studio Tools for Office (необязательный компонент Visual Studio 2008 Professional и Visual Studio Team System).

  • Microsoft Office Excel 2003 или Microsoft Office Excel 2007.

  • Доступ к серверу с примером базы данных SQL Server "Northwind". База данных может располагаться на компьютере разработчика или на сервере.

  • Разрешения на чтение из базы данных SQL Server и запись в нее.

Создание нового проекта

На этом шаге создается проект книги Excel.

Создание нового проекта

Созданная книга Excel открывается в конструкторе Visual Studio. Проект Иерархическое отношение добавляется в обозреватель решений.

Создание источника данных

Чтобы добавить типизированный набор данных в проект, используйте окно Источники данных.

Создание источника данных

  1. Если окно Источники данных не отображается, в меню Данные выберите пункт Показать источники данных.

  2. Выберите команду Добавить новый источник данных, чтобы запустить Мастер настройки источника данных.

  3. Выберите База данных и нажмите Далее.

  4. Выберите подключение к базе данных SQL Server "Northwind" или добавьте новое подключение с помощью кнопки Новое подключение.

  5. После выбора или создания подключения нажмите кнопку Далее.

  6. Чтобы сохранить подключение, снимите флажок (если он установлен) и нажмите кнопку Далее.

  7. В окне Объекты базы данных разверните узел Таблицы.

  8. Выберите таблицу Заказы и затем таблицу Сведения о заказе.

  9. Нажмите кнопку Готово.

С помощью мастера обе таблицы добавляются в окно Источники данных. Также к проекту добавляется типизированный набор данных, который отображается в обозревателе решений.

Добавление элементов управления на лист

На этом шаге на первый лист выполняется добавление именованного диапазона, объекта списка и двух кнопок. Сначала добавьте именованный диапазон и объект списка из окна Источники данных, чтобы обеспечить их автоматическое связывание с источником данных. Далее добавьте кнопки с панели элементов.

Добавление именованного диапазона и объекта списка

  1. Убедитесь, что в конструкторе Visual Studio открыта книга Иерархическое отношение.xls и отображается Лист1.

  2. Откройте окно Источники данных и разверните узел Заказы.

  3. Выберите столбец Код заказа и щелкните отображаемую стрелку раскрывающегося списка.

  4. Выберите в раскрывающемся списке объект NamedRange и перетащите его в ячейку A2 столбца Код заказа.

    В ячейке A2 создается элемент управления NamedRange с именем OrderIDNamedRange. Одновременно в проект добавляются элемент управления BindingSource с именем OrdersBindingSource, адаптер таблиц и экземпляр класса DataSet. Элемент управления связан с объектом BindingSource, который в свою очередь связан с экземпляром DataSet.

  5. Прокрутите столбцы таблицы Заказы. В нижней части списка располагается таблица Сведения о заказе, которая является дочерней по отношению к таблице Заказы. Выберите дочернюю таблицу Сведения о заказе (не расположенную на одном уровне с таблицей Заказы) и щелкните отображающуюся стрелку раскрывающегося списка.

  6. Выберите в раскрывающемся списке элемент управления ListObject и перетащите таблицу Сведения озаказе в ячейку A6.

  7. В ячейке A6 создается элемент управления ListObject с именем Order_DetailsListObject, который привязывается к объекту BindingSource.

Добавление двух кнопок

  1. Со вкладки Стандартные элементы управленияпанели элементов перетащите элемент управления Button в ячейку A3 листа.

    Этой кнопке присваивается имя Button1.

  2. Перетащите другой элемент управления Button в ячейку B3 листа.

    Этой кнопке присваивается имя Button2.

Затем пометьте набор данных как кэшируемый в документе.

Кэширование набора данных

Чтобы пометить набор данных как кэшируемый в документе, определите его с помощью модификатора Public и установите свойство CacheInDocument.

Кэширование набора данных

  1. Выберите объект NorthwindDataSet в области компонентов.

  2. В окне Свойства измените значение свойства Modifiers на Public.

    Допускается кэширование только документов, определенных с помощью модификатора Public.

  3. Измените значение свойства CacheInDocument на True.

Далее следует добавить текст для кнопок. В C# также добавляется код управления обработчиками событий.

Инициализация элементов управления

Установите текст кнопки и добавьте обработчики событий в событии Startup.

Инициализация данных и элементов управления

  1. В обозревателе решений щелкните правой кнопкой мыши Лист1.vb или Лист1.cs и выберите в контекстном меню команду Перейти к коду.

  2. В метод Sheet1_Startup добавьте следующий код, в котором задается текст кнопок.

    Me.Button1.Text = "<"
    Me.Button2.Text = ">"
    
    this.button1.Text = "<";
    this.button2.Text = ">";
    
  3. Добавьте обработчики событий для событий Click кнопок в метод Sheet1_Startup (только для C#).

    this.button1.Click += new EventHandler(button1_Click);
    this.button2.Click += new EventHandler(button2_Click);
    

Добавление кода, включающего прокрутку записей

Чтобы включить перемещение по записям, добавьте код в обработчики событий Click для каждой кнопки.

Прокрутка записей

  1. Добавьте обработчик событий Click для элемента управления Button1, а также следующий код, обеспечивающий перемещение по записям в обратном направлении:

    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) _
        Handles Button1.Click
    
        Me.OrdersBindingSource.MovePrevious()
    End Sub
    
    private void button1_Click(object sender, EventArgs e)
    {
        this.ordersBindingSource.MovePrevious();
    }
    
  2. Добавьте обработчик событий Click для элемента управления Button2, а также следующий код, обеспечивающий перемещение по записям в прямом направлении:

    Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) _
        Handles Button2.Click
    
        Me.OrdersBindingSource.MoveNext()
    End Sub
    
    private void button2_Click(object sender, EventArgs e)
    {
        this.ordersBindingSource.MoveNext();
    }
    

Тестирование приложения

Теперь можно выполнить тестирование книги, чтобы проверить корректность отображения данных, а также возможность использования решения в автономном режиме.

Тестирование кэширования данных

  1. Нажмите клавишу F5.

  2. Убедитесь, что именованный диапазон и объект списка заполняются данными из источника данных.

  3. Выполните прокрутку записей, нажимая соответствующие кнопки.

  4. Сохраните книгу. Закройте книгу и среду Visual Studio.

  5. Закройте подключение к базе данных. Если база данных располагается на сервере, отключите сетевой кабель. Если база данных располагается на компьютере разработчика, остановите службу SQL Server.

  6. Откройте приложение Excel. Откройте файл Иерархическое отношение.xls из каталога "\bin" ("\Иерархическое отношение\bin" в Visual Basic или "\Иерархическое отношение\bin\debug" в C#).

  7. Выполните прокрутку записей, чтобы проверить правильность работы листа в автономном режиме.

  8. Восстановите подключение к базе данных. Если база данных располагается на сервере, подключите компьютер к сети. Если база данных располагается на компьютере разработчика, запустите службу SQL Server.

Следующие действия

В этом пошаговом руководстве показаны основные принципы создания иерархического отношения на листе, а также кэширования набора данных. Далее будут рассмотрены следующие задачи:

См. также

Основные понятия

Привязка данных к элементам управления

Кэширование данных

Общие сведения о ведущих элементах и элементах управления ведущего приложения

Другие ресурсы

Данные в решения Microsoft Office