Desenho de linhas entre os elementos em WPF
Pergunta
O que é uma boa abordagem para desenhar linhas entre os elementos no WPF?
Eu tenho uma visão no meu aplicativo com vários botões que compõem um diagrama. Eles dimensionar e mover dependendo do tamanho e forma da vista. Eu gostaria de indicar uma relação entre alguns dos botões usando uma linha.
Eu não estou usando um Canvas
para colocar tudo para fora porque eu quero posições relativas dos botões para ser dinâmico, e eu não quero tudo para escala na mesma taxa (como um ViewBox
faz).
Solução 2
A minha solução foi usar um Grid
com um Canvas
e meus elementos na mesma célula. Eu desenhei as linhas no Canvas
no meu código-behind arquivo.
Outras dicas
Você precisa criar um recipiente de controle para ser capaz de definir a relação dos botões.
Uma vez que esta é estabelecida, o desenho da linha deve ser uma questão de substituir OnRender
, encontrar a posição de cada controle filho, e usando a DrawingContext
para desenhar a linha.