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


Как создать рабочий процесс блок-схемы

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

Примечание.

Каждый раздел в учебнике «Приступая к работе» построен на основе предыдущих разделов. Чтобы завершить эту статью, сначала необходимо выполнить инструкции . Создание действия.

Создание рабочего процесса

  1. Щелкните правой кнопкой мыши NumberGuessWorkflowActivities в Обозреватель решений и выберите "Добавить", "Создать элемент".

  2. В узле "Установленные", "Общие элементы" выберите "Рабочий процесс". Выберите действие из списка рабочих процессов .

  3. Введите FlowchartNumberGuessWorkflow поле "Имя" и нажмите кнопку "Добавить".

  4. Перетащите действие блок-схемы из раздела блок-схемы панели элементов и перетащите его на метку drop здесь на рабочей области конструктора рабочего процесса.

Создание переменных и аргументов рабочего процесса

  1. Дважды щелкните FlowchartNumberGuesSWorkflow.xaml в Обозреватель решений, чтобы отобразить рабочий процесс в конструкторе, если он еще не отображается.

  2. Щелкните Аргументы в левой нижней части конструктора рабочих процессов, чтобы отобразить область аргументов .

  3. Нажмите кнопку "Создать аргумент".

  4. Введите MaxNumber в поле "Имя", выберите " в раскрывающемся списке "Направление", выберите Int32 из раскрывающегося списка "Тип аргумента", а затем нажмите клавишу ВВОД, чтобы сохранить аргумент.

  5. Нажмите кнопку "Создать аргумент".

  6. Введите Turns в поле "Имя ", которое находится под недавно добавленным MaxNumber аргументом, выберите "Вне " в раскрывающемся списке "Направление ", выберите Int32 из раскрывающегося списка "Тип аргумента" и нажмите клавишу ВВОД.

  7. Щелкните Аргументы в левой нижней части конструктора действий, чтобы закрыть область аргументов .

  8. Щелкните Переменные в левой нижней части конструктора рабочих процессов, чтобы отобразить панель "Переменные".

  9. Нажмите кнопку "Создать переменную".

    Совет

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

  10. Введите Guess в поле "Имя", выберите Int32 из раскрывающегося списка типа переменной и нажмите клавишу ВВОД, чтобы сохранить переменную.

  11. Нажмите кнопку "Создать переменную".

  12. Введите Target в поле "Имя", выберите Int32 из раскрывающегося списка типа переменной и нажмите клавишу ВВОД, чтобы сохранить переменную.

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

Добавление действий рабочего процесса

  1. Перетащите действие "Назначение" из раздела "Примитивы" панели элементов и наведите указатель мыши наначальный узел, который находится в верхней части блок-схемы. Когда действие "Назначить" находится на начальномузле, три треугольника будут отображаться вокруг начального узла. Удалите действие "Назначение" в треугольнике, который находится непосредственно под узлом "Пуск". Это приведет к связыванию двух элементов и назначает действие "Назначить " в качестве первого действия в блок-схеме.

    Примечание.

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

  2. Введите Target поле "To " и следующее выражение в поле "Ввод выражения C#" или "Ввод выражения VB".

    New System.Random().Next(1, MaxNumber + 1)  
    
    new System.Random().Next(1, MaxNumber + 1)  
    

    Совет

    Если окно панели элементов не отображается, выберите панель элементов в меню "Вид".

  3. Перетащите действие "Запрос" из раздела NumberGuessWorkflowActivities панели элементов, удалите его под действием "Назначение" на предыдущем шаге и подключите действие "Запрос" к действию "Назначение". Соединить два действия можно тремя способами. Первый способ — подключить их при удалении действия запроса в рабочем процессе. При перетаскивании действия запроса в рабочий процесс наведите указатель мыши на действие "Назначение" и перетащите его на один из четырех треугольников, которые отображаются, когда действие запроса переключится на действие "Назначение". Второй способ — удалить действие "Запрос" в рабочий процесс в нужном расположении. Затем наведите указатель мыши на действие "Назначение " и перетащите один из прямоугольников, отображаемых вниз в действие запроса . Перетащите указатель мыши, чтобы линия подключения из действия "Назначение " подключились к одному из прямоугольников действия "Запрос ", а затем отпустите кнопку мыши. Третий способ очень похож на первый способ, за исключением того, что вместо перетаскивания действия запроса из панели элементов перетащите его из области конструктора рабочего процесса, наведите указатель мыши на действие "Назначение " и перетащите его на один из отображаемых треугольников.

  4. В окне свойств для действия запроса введите "EnterGuess" кавычки в поле значения свойства BookmarkName. Введите Guess в поле значения свойства Result и введите следующее выражение в поле "Текстовое свойство".

    "Please enter a number between 1 and " & MaxNumber  
    
    "Please enter a number between 1 and " + MaxNumber  
    

    Совет

    Если окно свойств не отображается, выберите окно свойств в меню "Вид".

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

  6. Введите Turns поле "To " и Turns + 1 введите выражение C# или введите поле выражения VB.

  7. Перетащите FlowDecision из раздела блок-схемы панели элементов и подключите его под действием "Назначение". В окне свойств введите следующее выражение в поле "Значение свойства условия".

    Guess = Target  
    
    Guess == Target  
    
  8. Перетащите другое действие FlowDecision из панели элементов и удалите его под первым. Подключение два действия путем перетаскивания из прямоугольника, помеченного False в верхней части действия FlowDecision в прямоугольник в верхней части второго действия FlowDecision.

    Совет

    Если метки True и False не отображаются в FlowDecision, наведите указатель мыши на FlowDecision.

  9. Щелкните второе действие FlowDecision , чтобы выбрать его. В окне свойств введите следующее выражение в поле "Значение свойства условия".

    Guess < Target
    
  10. Перетащите два действия WriteLine из раздела "Примитивы" панели элементов и удалите их рядом с двумя действиями FlowDecision. ПодключениеИстинное действие нижнего действия FlowDecision до самого левого действия WriteLine и действие False в самом правом действии WriteLine.

  11. Щелкните самое левое действие WriteLine , чтобы выбрать его, и введите следующее выражение в поле "Значение свойства "Текст " в окне свойств.

    "Your guess is too low."  
    
  12. ПодключениеWriteLine в левой части действия запроса, расположенного над ним.

  13. Щелкните правое действие WriteLine , чтобы выбрать его, и введите следующее выражение в поле "Значение свойства "Текст " в окне свойств.

    "Your guess is too high."  
    
  14. ПодключениеДействие WriteLine в правой части действия запроса над ним.

    В следующем примере показан завершенный рабочий процесс.

    Diagram that shows a completed Windows Workflow Foundation flowchart.

Построение рабочего процесса

  1. Чтобы построить решение, нажмите CTRL+SHIFT+B.

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

См. также