2012-10-27 93 views
0

我面臨用戶控制中的數據綁定問題。 用戶控制數據綁定winrt

<UserControl.Resources> 
     <CollectionViewSource 
       x:Name="itemsViewSource" 
       Source="{Binding Items}" 
       d:Source="{Binding AllGroups[0].Items, Source={d:DesignInstance Type=data:SampleDataSource, IsDesignTimeCreatable=True}}"/> 
     </UserControl.Resources> 
     <UserControl.DataContext> 
      <Binding> 
       <Binding.Source> 
        <local:SampleDataSource /> 
       </Binding.Source> 
      </Binding> 
     </UserControl.DataContext> 

    <StackPanel Margin="20,60"> 
      <TextBlock Style="{StaticResource PageHeaderTextStyle}">Categories</TextBlock> 
       <ListBox> 
        <ListBoxItem Content="{Binding Title}" /> 


       </ListBox> 

      </StackPanel> 

Title屬性綁定顯示在XAML設計器窗口,但程序的執行過程中沒有被顯示。 我使用默認的flipview佈局,其中SampleDataSource.cs文件中有一個「標題」

回答

0

「d:」前綴是用於您將專門定義用於設計器的屬性,因此您應該嘗試替換「來源」與「來源」。

+1

'Source'已定義,'Source =「{Binding Items}」'。爲什麼他需要將'd:Source'更改爲'Source'? – Mayank

+0

對不起,我錯過了。那麼你的DataContext是什麼?它是否有一個Items屬性?確保檢查VS輸出窗口(Ctrl + W,O)以查看是否有彈出的綁定錯誤。 –

0

做你解決以下行

DataContext="{Binding DefaultViewModel, RelativeSource={RelativeSource Self}}" 

它在所有的頁面聲明是頂部定義。

而且

Source="{Binding Items}" 

指的是一個名爲ListItemsDataContext