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


Пошаговое руководство. Управление ресурсами в проекте WPF

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

Ресурсами являются объекты .NET Framework, используемые приложениями, которые получают к ним доступ. Примерами ресурсов являются кисти для цветовых схем или изображений. Для упорядочения всех ресурсов в одном удобном в управлении файле и предоставления доступа к ним из приложений можно использовать класс ResourceDictionary.

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

  • Добавление класса ResourceDictionary.

  • Добавление ресурса к классу ResourceDictionary.

  • Осуществление доступа к ресурсу.

Позже станет понятно, как добавить ResourceDictionary к приложению и получить доступ к ресурсам, содержащимся в ResourceDictionary.

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

Отображаемые диалоговые окна и команды меню могут отличаться от описанных в справке в зависимости от текущих параметров или версии среды. Для изменения параметров выберите пункт Импорт и экспорт параметров в меню Сервис. Дополнительные сведения см. в разделе Параметры Visual Studio.

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

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

  • Visual Studio 2008.

Добавление класса «ResourceDictionary»

Первым шагом является добавление класса ResourceDictionary к приложению.

Добавление класса «ResourceDictionary» к приложению

  1. Создайте новый проект приложения WPF на языке Visual Basic или Visual C# с именем ManageResources. Дополнительные сведения см. в разделе Практическое руководство. Создание нового проекта приложения WPF.

    В конструкторе WPF (конструктор) откроется файл Window1.xaml.

  2. В Обозревателе решений щелкните правой кнопкой мыши проект «ManageResources» и выберите Добавить | ResourceDictionary.

    Откроется диалоговое окно Добавление нового элемента.

  3. Убедитесь, что в поле Имя отображается Dictionary1.xaml, и нажмите кнопку Добавить.

    Новый класс ResourceDictionary с именем «Dictionary1.xaml» добавлен в проект и открыт в конструкторе WPF (конструктор).

Добавление ресурса к классу «ResourceDictionary»

Добавленный класс ResourceDictionary можно редактировать в редакторе XAML и использовать в качестве центрального репозитория ресурсов. Теперь необходимо добавить ресурс к классу ResourceDictionary.

Добавление ресурса к классу «ResourceDictionary»

  1. Убедитесь, что файл «Dictionary1.xaml» открыт в конструкторе WPF (конструктор).

  2. В представлении XAML добавьте следующую разметку XAML после открывающего тега <ResourceDictionary>:

    <SolidColorBrush Color="Green" x:Key="myBrush"></SolidColorBrush>
    
  3. В меню Файл выберите Сохранить все.

    Кисть SolidColorBrush добавлена с именем myBrush в качестве ресурса, доступного приложению.

Осуществление доступа к ресурсу

В этой процедуре предстоит получить доступ к ресурсу SolidColorBrush и использовать его в главном окне приложения.

Получение доступа к ресурсу

  1. В конструкторе WPF (конструктор) перейдите на вкладку с надписью «Window1.xaml» для просмотра этого файла.

  2. Из Панели элементов перетащите в окно элемент управления Button.

  3. В представлении XAML добавьте следующий код XAML после открывающего тега <Window> перед начальным тегом «Grid»:

    <Window.Resources>
       <ResourceDictionary Source="Dictionary1.xaml">
       </ResourceDictionary>
    </Window.Resources>
    

    Выполнится импорт класса ResourceDictionary, определенного в файле Dictionary1.xaml, в ресурсы текущего окна.

  4. Добавьте следующий код XAML в открывающем теге <Button>

    Background="{StaticResource myBrush}"
    

    При этом для свойства Background элемента управления Button устанавливается значение кисти, определенное ресурсом с указанным именем.

  5. Нажмите клавишу F5 для запуска приложения.

    Фон кнопки — зеленый.

См. также

Задачи

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

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

Общие сведения о ресурсах

Ресурсы и код

Ссылки

Resources

FindResource

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

Использование ресурсов

Примеры использования ресурсов (WPF)

XAML и код в конструкторе WPF