Definir o valor padrão de um propriedade de dependência em tempo de design em uma Atividade Windows Workflow Foundation personalizado
-
19-09-2019 - |
Pergunta
Estou implementando um fluxo de trabalho personalizado e atividades a serem reutilizados em vários projetos e tentar levá-los a ser tão fácil de usar quanto possível. Neste fluxo de trabalho eu tenho uma propriedade cujo nome é 'UserID', que eu gostaria de vincular a um DependencyProperty em uma de minhas atividades. Eu posso atualmente vinculá-lo em tempo de design procurando explicitamente a propriedade cada vez que eu adicionar uma dessas atividades para o fluxo de trabalho, mas eu gostaria que esta atividade a ser binded automaticamente.
Tanto quanto eu sei (me corrija se eu estiver errado), para vincular uma propriedade de dependência em tempo de design preciso especificar uma string no formato "Atividade = NameOfWorkflow, Path = UserID" à tag DefaultBindingProperty metadados, e eu gostaria que o nome do fluxo de trabalho para ser concluída, de alguma forma. Qualquer maneira de fazer isso?
Graças
Solução
Eu finalmente conseguiu alcançar isso, anexando uma ActivityToolboxItem para a atividade, e substituindo um método em que cria a instância mostrado no designer. Eu usei um objeto ActivityBind para vincular o DependencyProperty à propriedade do workflow. Para obter a instância do fluxo de trabalho, eu só procurou um antepassado à minha atividade chamando act.Parent até que a atividade teve nenhum pai (e, portanto, foi o próprio StateMachineWorkflowActivity)