2011-05-29 52 views
0

如下面的代碼所示,我有一個Canvas,裏面有一個TextBlock。在它旁邊,有兩個textBlocks,它們的文本屬性綁定到LineOne和LineTwo,ObservableCollection變量。我想要的是創建一個綁定,給出日期並相應地更改Canvas的顏色。如何在這種情況下進行綁定?

理論上,我可以綁定DateTextBlockText屬性的日期更改。但我不知道如何去做Canvas的顏色變化。

<DataTemplate> 
<StackPanel Orientation="Horizontal" Margin="0,0,0,17"> 
<!--Replace rectangle with image--> 
<Canvas Width="100" Height="100" Background="YellowGreen"> 
<StackPanel> 
<TextBlock Name="DateTextBlock" Text="16 May" HorizontalAlignment="Center" VerticalAlignment="Center" /> 
</StackPanel> 
</Canvas> 
<StackPanel Width="311">          
<TextBlock Text="{Binding LineOne}" TextWrapping="Wrap" Style="{StaticResource PhoneTextExtraLargeStyle}"/> 
<TextBlock Text="{Binding LineTwo}" TextWrapping="Wrap" Margin="12,-6,12,0" Style="{StaticResource PhoneTextSubtleStyle}"/> 
</StackPanel> 
</StackPanel> 
</DataTemplate> 

請告訴我。 謝謝,

回答

0

在視圖模型上創建一個顏色屬性,並且一個屬性改變了通知程序。將視圖屬性綁定到Color屬性。在視圖模型中,當文本更改(或者任何想要觸發顏色更改的內容)時,請使用適當的顏色更新Color屬性,確保使用公共屬性,以便觸發更改事件。

+0

Canvas.Background的類型是彩色的沒有,你需要提供一個刷 – ColinE 2011-05-29 06:33:38