2012-05-03 34 views
-1

我試圖在WP7提出一個列表視圖,由於某種原因它似乎並沒有工作列表框在WP7不適合我的工作

我的XAML

  <!--ContentPanel - place additional content here--> 
     <StackPanel x:Name="ContentPanel2" Grid.Row="1" Margin="12,0,12,0"> 
      <ListBox x:Name="list"> 
       <ListBox.ItemTemplate> 
        <DataTemplate> 
         <StackPanel Margin="5"> 
         <Image Source="{Binding ImageUri}" Stretch="None"/> 
         <TextBlock Text="{Binding Text}"/> 
         </StackPanel> 
        </DataTemplate> 
       </ListBox.ItemTemplate> 
      </ListBox> 
     </StackPanel> 

    </Grid> 

我的C#代碼

​​

 private void PhoneApplicationPage_Loaded(object sender, RoutedEventArgs e) 
    { 
     List<list> dataSources = new List<list>(); 
     dataSources.Add(new list() { title = "Shacharit", imageSource = "Images/shacharit.png" }); 
     dataSources.Add(new list() { title = "Mincha", imageSource = "Images/mincha.png" }); 
     dataSources.Add(new list() { title = "Arvit", imageSource = "Images/arvit.png" }); 
     dataSources.Add(new list() { title = "Birkat HaMazon", imageSource = "Images/shacharit.png" }); 
     list.ItemsSource = dataSources; 
    } 

比ks

+0

它似乎並沒有工作意味着發生了什麼? – coder

回答

2

請嘗試以下操作,更改圖像和文本塊的綁定,以綁定到您目前正在聲明的字符串,並試圖綁定到ImageURI和Text,並且它們不存在於任何代碼中。

  <!--ContentPanel - place additional content here--> 
    <StackPanel x:Name="ContentPanel2" Grid.Row="1" Margin="12,0,12,0"> 
     <ListBox x:Name="list" Da> 
      <ListBox.ItemTemplate> 
       <DataTemplate> 
        <StackPanel Margin="5"> 
        <Image Source="{Binding imageSource }" Stretch="None"/> 
        <TextBlock Text="{Binding title}"/> 
        </StackPanel> 
       </DataTemplate> 
      </ListBox.ItemTemplate> 
     </ListBox> 
    </StackPanel> 

</Grid> 
+0

太好了。有效。謝謝 – orelzion

+0

太好了,很高興提供幫助。你可以接受我的和殭屍熱忱回答。乾杯 –

1

要澄清喬恩D的答案,你在你的代碼「的ImagePath」和「稱號」的屬性創建數據對象後面

new list() { title = "Shacharit", imageSource = "Images/shacharit.png" }; 

而是試圖兵對屬性叫做「ImageUri」和「文本」。

在VS的輸出窗口中,您應該看到顯示出這些綁定錯誤。

以下2行(你在哪裏doinng在XAML綁定)應該解決的事情了你...

<Image Source="{Binding imageSource }" Stretch="None"/> 
<TextBlock Text="{Binding title}"/>