2012-08-24 94 views
1

下面是觸發的PropertyChanged屬性:列表框結合不同於TextBlock的行爲不同結合

public override List<Tag> Tags 
{ 
    get 
    { 
     return base.Tags; 
    } 
    set 
    { 
     if (base.Tags != value) { 
      base.Tags = value; 
      if (PropertyChanged != null) 
      { 
       PropertyChanged(this, 
         new PropertyChangedEventArgs("Tags")); 
       PropertyChanged(this, 
         new PropertyChangedEventArgs("TotalTagPages")); 
       PropertyChanged(this, 
         new PropertyChangedEventArgs("PageHasTags")); 
      } 
     } 

    } 
} 

這種控制刷新正確時CurrentPage.Tags修改:

<TextBlock DockPanel.Dock="Bottom" Name="TagHeader" 
    Text="{Binding CurrentPage.Tags, 
     Converter={converter:EnumerableToSpacedString}}"  
    Foreground="White" /> 

這一個不刷新時CurrentPage.Tags被更改,但當CurrentPage本身發生更改時會這樣做:

<ListBox VerticalAlignment="Top" 
    Style="{StaticResource DarkListBox}" 
    ItemTemplate="{StaticResource TagTemplateNoCounts}" 
    ItemsSource="{Binding CurrentPage.Tags}" > 
     <ListBox.ItemsPanel> 
     <ItemsPanelTemplate> 
     <StackPanel Orientation="Horizontal"></StackPanel> 
     </ItemsPanelTemplate> 
     </ListBox.ItemsPanel> 
</ListBox> 

任何想法?

+0

當你說*「改爲」 *你的意思'Tags'是越來越設置爲其他清單,對嗎? –

+0

正確........ –

+0

您是否在輸出窗口中啓用了綁定錯誤?如果是這樣(如果不這樣做)是否有任何綁定錯誤? – CodingGorilla

回答