У меня очень простой случай, который, я думаю, выиграет от использования шаблонов (но я не уверен, именно поэтому я и спрашиваю). Все примеры шаблонов, которые я видел, либо предполагают больше знаний, чем я, слишком специфичны для того, чтобы быть полезными для всего новичка, подобного мне, или содержать много вспомогательных материалов, из-за которых трудно определить, что является частью шаблона.wpf control template
Вот установка: У меня есть две метки бок о бок, с первым ярлыком, заполненным именем поля, и вторым ярлыком, заполненным значением поля.
Вот XAML я в настоящее время в моем приложении (много, много раз):
<StackPanel Style="{StaticResource horizontalStackerStyle}">
<Label Style="{StaticResource labelStyle}">Field One:</Label>
<Label Style="{StaticResource valueStyle}" Name="field1"
Content="{Binding dataObject.field1}" />
</StackPanel>
Я хотел бы создать шаблон таким образом, что я мог бы написать код XAML, как это:
<CustomControlOrWhatever
FieldName="Field One:"
FieldValue="{Binding dataObject.field1}"/>
У меня такое чувство, что я могу сделать это с помощью какого-то шаблона. Одно из преимуществ заключается в том, что мне не нужно постоянно указывать стили снова и снова. Я прав? Как мне это сделать?
Заранее благодарен!
UPDATE:
До сих пор не нашли ответа на это. Я выбрал возможное решение с использованием Dependency Properties и попытался задать clarifying question here. Ну, первый ответчик сказал, что мне на самом деле не нужно загромождать мой код с глупостью DP, поэтому я снова его изменил - и он все еще не работает. Может ли кто-нибудь придумать рабочее решение? Кажется, это должно быть так просто.
Просто, чтобы быть ясным: это должно быть только одностороннее связывание со значениями, обновляемыми каждые несколько секунд.
Если вы не возражаете, я спрашиваю вас, так как вы задали отдельный вопрос, почему его отменить? – Brandon
Потому что я полный новичок и очень мало опыта с этой системой. Я предполагаю, что вы проверяете ответ, который помог вам больше всего, или лучше всего ответил на вопрос. Проще говоря: я не мог заставить ваше решение работать. Поскольку я не могу понять, является ли проблема с вашим решением или (более вероятно) с моей его реализацией, я решил снять этот флажок. – Klay