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


Добавление команд Visual Studio на начальной странице

При создании пользовательской начальной страницы можно добавлять команды Visual Studio на него. Этот документ описывает различные способы привязка команды Visual Studio к объектам XAML на начальной странице.

Дополнительные сведения о командах см. в XAML. Общие сведения о системе команд

Добавление команд из колодца команды

Шаблон проекта указывает псевдонимы для начальной страницы Microsoft.VisualStudio.PlatformUI и Microsoft.VisualStudio.Shell пространства имен следующим образом.

Можно использовать vs: псевдоним для привязки команды Visual Studio с элементами управления на странице с помощью языка XAML Command свойство элемента управления vs:VSCommands.ExecuteCommand. Затем можно присвоить CommandParameter свойство имени команды выполнения, как показано в следующем примере.

<Button Name="btnNewProj" Content="New Project" 
        Command="{x:Static vs:VSCommands.ExecuteCommand}"
        CommandParameter="File.NewProject" >

</Button>
        

Примечание

x: псевдоним, который относится к схеме XAML является обязательным в начале всех команд.

Можно установить значение Command свойство к команде, можно обратиться из команда окна. Список доступных команд см. в разделе Псевдонимы команд Visual Studio.

Если команда добавить требует дополнительного параметра, то можно добавить его к значению CommandParameter свойство. Отдельные параметры команд с помощью пробелов, как показано в следующем примере.

<Button Content="Web Search" 
        Command="{x:Static vs:VSCommands.ExecuteCommand}"
        CommandParameter="View.WebBrowser www.bing.com" />

Вызов расширения из колодца команды

Можно вызывать команды от зарегистрированного VSPackages с использованием того же синтаксиса, который используется для того, чтобы вызывать другие команды Visual Studio. Например, если устанавливаются VSPackage добавляет a Домашняя страница команды к Просмотреть меню можно вызывать эту команду, установив CommandParameter В View.HomePage.

Примечание

При вызове команды, которая связана с VSPackage пакет должна быть загружена при вызове команды.

Чтобы вызвать команду, связанную с надстройкой Visual Studio необходимо использовать полное имя команды надстройки. Дополнительные сведения см. в разделе Практическое руководство. Запуск надстроек в командной строке.

Добавление команд из сборок

Для вызова команды из сборки или доступа к коду в VSPackage, которое не связано с помощью команды меню, необходимо создать псевдоним для сборки, а затем вызвать псевдоним.

Вызывать команду из сборки

  1. В решении добавьте ссылку на сборку.

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

    xmlns:vsc="clr-namespace:WebUserControl;assembly=WebUserControl"
    
  3. Вызовите команды путем установки Command свойство объекта XAML, как показано в следующем примере.

    Xaml

    <vs:Button Text="Hide me" Command="{x:Static vsc:HideControl}" .../>
    

Примечание

Если не используется шаблон проекта начальной страницы необходимо скопировать сборку и затем вставить внутри.\папка установки Visual StudioЗагружаются \ Common7 \ ide \ PrivateAssemblies \ убедиться его, прежде чем он вызывается.

Добавление команд из модели автоматизации

Доступ к модели автоматизации Visual Studio с начальной страницы и в разметке и в коде.

В разметке, можно получить доступ с помощью модели автоматизации Привязка расширения разметки синтаксис для вызова DTE объект. При использовании этого подхода можно привязать к простым свойствам, как те, которые возвращают коллекции, но не могут быть привязаны к методам или службам. В следующем примере показан a TextBlock мониторинг, что привязывается к Name свойство и a ListBox элемент управления, который перечисляет Caption свойства коллекции, которая возвращается Windows свойство.

<TextBlock Text="{Binding Path=DTE.Name}" FontSize="12" HorizontalAlignment="Center"/>
<ListBox ItemsSource="{Binding Path=DTE.Windows}">
    <ListBox.ItemTemplate>
        <DataTemplate>
            <TextBlock Text="{Binding Path=Caption}"/>
        </DataTemplate>
    </ListBox.ItemTemplate>
</ListBox>

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

Дополнительные сведения о модели автоматизации см. Расширение среды Visual Studio OR Создание ссылок на сборки автоматизации и объект DTE2.k

Относительные пути

При ссылке на пути к файлу с начальной страницы всегда используйте относительный путь для поддержки различных системных конфигурации. Однако корневой элемент всех относительных путей на начальной странице позволяет не к папке, но \ StartPages \. \папка установки Visual Studio\ Common7 \ ide \, где находится файл devenv.exe. Чтобы задать путь к местоположению файлов относительно начальной страницы используйте VSStartPageRelativeConverter. Сделайте это, установив Source свойство объекта vs:StartPageRelative, как показано в следующем примере.

<Image Source="{sp:StartPageRelative Image1.png}" Margin="20" /> 

Можно использовать стандартный синтаксис относительного пути при обращении к ресурсам, которые включены в Visual Studio или файлы, включенные в других пакетах.

См. также

Задачи

Пошаговое руководство: Добавление ссылки на начальной странице

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

архитектура начальной страницы

Рекомендации по начальной страницы

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

Настройка начальной страницы в Visual Studio