W naszej pracy mamy kontrowersje, w których niektórzy ludzie chcą tworzyć kontrole użytkowników, które łączą często używane kontrolki, takie jak etykieta i pole tekstowe, lub etykieta i kontrola obrazu. Oznacza to, że coś takiego:Kiedy należy wyodrębnić UserControl w WPF
<StackPanel Orientation="Horizontal">
<Image Source="/Someimage/Somewhere.gif"/>
<Label>Some text, hyperlink, or other content</Label>
</StackPanel>
i używać go tak jak to
<ImageLabel
HeaderImageSource="/Someimage/Somewhere.gif"
>
Some text, hyperlink, or other content
</ImageLabel>
pytanie brzmi, czy są one zapewnienie wystarczającej hermetyzacji i abstrakcji do zasługują na osobną kontrolę użytkownika?
Czy stylów tego nie robi? –
Tak, możesz używać stylów, aby upewnić się, że poszczególne komponenty wyglądają tak samo - ale musisz pamiętać, aby zaktualizować odniesienie do stylu dla każdego komponentu. Jeśli chcesz, aby wyglądały tak samo wszędzie, gdzie są używane - jako jeden komponent logiczny, powinieneś sprawić, że będzie to kontrola użytkownika. Jeśli np. zmień styl na swojej etykiecie, ale zapomnij zaktualizować go, gdy uzyskasz jedno wystąpienie tego "komponentu", który wygląda inaczej niż pozostałe. Uważam, że budowanie oddzielnych komponentów jest bardziej czyste. Ale znowu; jeśli w jakiś sposób są logicznie ze sobą powiązane. – stiank81
Sterowanie jest proponowane jako ogólne rozwiązanie wszędzie tam, gdzie obraz musi być używany z etykietą –