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


Macros.Pause - метод

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

Пространство имен:  EnvDTE
Сборка:  EnvDTE (в EnvDTE.dll)

Синтаксис

'Декларация
Sub Pause
void Pause()
void Pause()
abstract Pause : unit -> unit 
function Pause()

Заметки

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

Чтобы возобновить запись макроса после приостановки, воспользуйтесь методом Resume. Метод Pause следует использовать только внутри надстроек.

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

Примеры

public void CodeExample(DTE2 dte, AddIn addin)
{
    // INSTRUCTIONS: Run this code, open a solution, start
    // recording a macro, then connect the add-in containing this code.
    try
    {
        Macros mac = dte.Macros;
        if (mac.IsRecording)
        {
            mac.Pause();
            if (!mac.IsRecording)
                mac.Resume();
            mac.EmitMacroCode("rem Code added by the EmitMacroCode method");
            // Demonstrate these two properties return the same reference.
            bool test = mac.DTE.Equals(mac.Parent);
            if (test) MessageBox.Show("The DTE and Parent property refer to the same object.");
            else MessageBox.Show("The DTE and Parent property do not refer to the same object.");
        }
        else MessageBox.Show("Start a macro recording session and reconnect addin");
    }
    catch(Exception ex)
    {
        MessageBox.Show(ex.Message);
    }
}

Безопасность платформы .NET Framework

См. также

Ссылки

Macros Интерфейс

EnvDTE - пространство имен

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

Автоматизация повторяющихся действий с помощью макросов