2009-11-03 3 views
1

У меня есть пользовательский класс, который расширяет Control так:TemplateBinding с пользовательским классом

class TheCountry : Control 
{ 
//...details 
} 

Тогда у меня есть этот элемент в моем XAML:

<Canvas x:Name="mainCanvas" Height="768" Width="1536" AllowDrop="False"> 
    <spots:TheCountry Country="Australia" Canvas.Left="1362" Canvas.Top="486" Template="{DynamicResource TheCountryIcon}" /> 
</Canvas> 

И в моих ресурсах у меня есть шаблон:

<UserControl.Resources> 
    <ControlTemplate x:Key="TheCountryIcon" TargetType="{x:Type spots:TheCountry}"> 
     <Grid Width="35" Height="35"> 
      <Image Source="{TemplateBinding Property=CountryImagePath}" Width="35" Height="35" AllowDrop="True"/> 
     </Grid> 
    </ControlTemplate> 
</UserControl.Resources> 

и у меня есть свойство зависимостей называется CountryImagePath в моем TheCountry класс, но когда я запускаю свое приложение, я не получаю изображение.

Я даже положил точку останова на геттер в свойстве зависимости, и он не попадает. Как это исправить?

ответ

1

Точки останова в свойствах зависимостей фактически не работают - WPF обходит геттер и сеттер после установления привязки. Посмотрите на это сообщение Беа Stollnitz для некоторых советов для отладки привязок:

How can I debug WPF bindings?

Что вы делаете звучит разумно. Вы уверены, что «CountryImagePage» установлен правильно?

+0

Да, я уверен, я изучаю эти методы отладки, спасибо – Mark

Смежные вопросы