Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
Este tópico descreve o procedimento para alojar uma instância do Designer do Fluxo de Trabalho do Windows numa aplicação de Windows Presentation Foundation (WPF).
O procedimento configura o controlo Grelha que contém o estruturador, cria programaticamente uma instância do WorkflowDesigner que contém uma atividade predefinidaSequence, regista os metadados do estruturador para fornecer suporte ao estruturador para todas as atividades incorporadas e aloja a Designer de Fluxo de Trabalho na aplicação WPF.
Para alojar o estruturador de fluxo de trabalho
Abra o projeto HostingApplication que criou na Tarefa 1: Criar uma Nova Aplicação Windows Presentation Foundation.
Ajuste o tamanho da janela para facilitar a utilização do fluxo de trabalho Designer. Para tal, selecione MainWindow no estruturador, prima F4 para apresentar a janela Propriedades e, na secção Esquema , defina a Largura para um valor de 600 e a Altura para um valor de 350.
Defina o nome da grelha ao selecionar o painel Grelha no estruturador (clique na caixa dentro do MainWindow) e defina a propriedade Nome na parte superior da janela Propriedades como "grelha1".
Na janela Propriedades , clique nas reticências (...) junto à
ColumnDefinitionspropriedade para abrir a caixa de diálogo Editor de Coleções .Na caixa de diálogo Editor de Coleções , clique três vezes no botão Adicionar para inserir três colunas no esquema. A primeira coluna irá conter a Caixa de Ferramentas, a segunda coluna irá alojar a Designer fluxo de trabalho e a terceira coluna será utilizada para o inspetor de propriedades.
Defina a
Widthpropriedade da coluna do meio para o valor "4*".Clique em OK para guardar as alterações. O seguinte XAML é adicionado ao ficheiro MainWindow.xaml :
<Grid Name="grid1"> <Grid.ColumnDefinitions> <ColumnDefinition /> <ColumnDefinition Width="4*" /> <ColumnDefinition /> </Grid.ColumnDefinitions> </Grid>No Explorador de Soluções, clique com o botão direito do rato em MainWindow.xaml e selecione Ver Código. Modifique o código ao seguir estes passos:
Adicione os seguintes espaços de nomes:
using System.Activities; using System.Activities.Core.Presentation; using System.Activities.Presentation; using System.Activities.Presentation.Metadata; using System.Activities.Presentation.Toolbox; using System.Activities.Statements; using System.ComponentModel;Para declarar um campo de membro privado para conter uma instância do WorkflowDesigner, adicione o seguinte código à
MainWindowclasse :public partial class MainWindow : Window { private WorkflowDesigner wd; public MainWindow() { InitializeComponent(); } }Adicione o seguinte método
AddDesignerà classeMainWindow. A implementação cria uma instância do WorkflowDesigner, adiciona uma Sequence atividade à mesma e coloca-a na coluna do meio da Grelha1.private void AddDesigner() { // Create an instance of WorkflowDesigner class. this.wd = new WorkflowDesigner(); // Place the designer canvas in the middle column of the grid. Grid.SetColumn(this.wd.View, 1); // Load a new Sequence as default. this.wd.Load(new Sequence()); // Add the designer canvas to the grid. grid1.Children.Add(this.wd.View); }Registe os metadados do estruturador para adicionar suporte ao estruturador para todas as atividades incorporadas. Isto permite-lhe remover atividades da caixa de ferramentas para a atividade original Sequence na Designer fluxo de trabalho. Para tal, adicione o
RegisterMetadatamétodo àMainWindowclasse :private void RegisterMetadata() { var dm = new DesignerMetadata(); dm.Register(); }Para obter mais informações sobre o registo de designers de atividade, veja Como: Criar uma Atividade Personalizada Designer.
No construtor de
MainWindowclasses, adicione chamadas aos métodos declarados anteriormente para registar os metadados do suporte do estruturador e para criar o WorkflowDesigner.public MainWindow() { InitializeComponent(); // Register the metadata. RegisterMetadata(); // Add the WFF Designer. AddDesigner(); }
Prima F5 para criar e executar a solução.
Consulte Tarefa 3: Criar a Caixa de Ferramentas e Os Painéis PropertyGrid para saber como adicionar suporte de Caixa de Ferramentas e PropertyGrid ao estruturador de fluxo de trabalho realojado.