/ / WPF aciona o VS Converter - wpf, c # -4.0, acionadores, conversor

O WPF dispara o conversor de VS - wpf, c # -4.0, disparadores, conversor

Qual é melhor usar o desempenho sábio? Limitação do Conversor em comparação ao gatilho e vice-versa. Devo limitar o uso do conversor porque pode causar explosão de classe?

Respostas:

5 para resposta № 1

Se você está em desenvolvimento TDD, será melhor escolha para ir com conversores.

Se não houver lógica de negócios complexa oulógica a ser aplicada, em seguida, vá para Triggers. Mais uma coisa sobre os conversores é que, há um hit de desempenho associado ao uso de conversores de acordo com Laurent Bugnion (criador do MVVM Light).

Você pode ver mais insights sobre o desempenho atingido neste post. DataTrigger vs ligação de dados com o desempenho do conversor sábio

Você pode obter mais detalhes sobre quando usar o gatilho e quando usar conversores deste post também. Devo usar o conversor ou gatilho do WPF?

A decisão pode ser tomada com base na abordagem de desenvolvimento que você está seguindo ou vai seguir. Eu prefiro envolver o seu modelo de visão em um conceito "WPF Viewmodel" na maioria das vezes.


0 para resposta № 2

Para tipo similar de saída, Triggers são melhor desempenho sábio em comparação com Converter. Apesar, conveters É aconselhável onde você quer que o desenvolvimento seja TDD, pois você pode escrever testes de unidade para o seu código de conversor. Converters pode ser usado para gravar conversões complexas que às vezes não são possíveis usando Triggers. Para conversões complexas Converters pode reduzir o código em vez de escrever séries de Triggers.


0 para resposta № 3

Na maioria dos cenários, os gatilhos podem executar o mesmo trabalho que qualquer conversor, mas os conversores podem ter lógica personalizada / comercial.

Uma limitação dos Triggers é que Setters emseus DataTriggers só podem alterar as propriedades de seus elementos da interface do usuário; Assim, você não pode atualizar sua propriedade ViewModels com gatilhos, é onde os conversores ganham, lembre-se do método ConvertBack.

Então, em suma Triggers só pode realizar operações OneWay Considerando que os conversores podem realizar operações TwoWay