2013-01-08 30 views
7

的LongListSelector電話控制在工具箱LongListSelector,過去有一個屬性IsFlatList其需要被設置爲真而沒有任何分組以顯示簡單列表。但在手機控件中提供的LongListSelector中,此屬性丟失。下面是我在做什麼如何顯示flatlist使用WP8

<phone:LongListSelector Name="myList" IsGroupingEnabled="False" LayoutMode="List" ItemsSource="{Binding Source ={StaticResource SortedList} }" CacheMode="BitmapCache" > 
       <phone:LongListSelector.ItemTemplate> 
        <DataTemplate> 
         <components:MyControl CacheMode="BitmapCache" MyItem="{Binding}"/> 
        </DataTemplate> 
       </phone:LongListSelector.ItemTemplate> 
      </phone:LongListSelector> 

如果我改變控件列表框和刪除LongListSelector特定的屬性則顯示我的名單。

有人可以告訴我我失蹤了嗎? 我下面LongListSelector

this(注)文檔

回答

3

在LongListSelector設置LayoutMode列出了Windows Phone 8的版本和IsGroupingEnabled假應顯示您的數據綁定數據作爲平面列表像控制的WP7版本的工具包。

例如,

鑑於實體類

public class Entity 
{ 
    public string Name 
    { 
     get; 
     set; 
    } 

    public string Info 
    { 
     get; 
     set; 
    } 

    public int ID 
    { 
     get; 
     set; 
    } 
} 

所有我需要做的就是我的網頁上創建實體的一個ObservableCollection並將其綁定到我的LongListSelector(命名錶)的的ItemSource。

ObservableCollection<Entity> data = new ObservableCollection<Entity>(); 
list.ItemsSourdce = data; 

然後我創建實體並將它們添加到集合中。

這裏是我的LongListSelector的XAML:

<Grid x:Name="ContentPanel" Grid.Row="1" Margin="12,0,12,0"> 
     <phone:LongListSelector Name="list" HorizontalAlignment="Left" Height="609" VerticalAlignment="Top" Width="456" LayoutMode="List" IsGroupingEnabled="False" > 
      <phone:LongListSelector.ItemTemplate> 
       <DataTemplate> 
        <StackPanel VerticalAlignment="Top"> 
         <TextBlock FontWeight="Bold" Text="{Binding Name}" /> 
         <TextBlock Text="{Binding Info}" /> 
        </StackPanel> 
       </DataTemplate> 
      </phone:LongListSelector.ItemTemplate> 
     </phone:LongListSelector> 
    </Grid> 
+0

嗯。在花了幾個小時玩WP8中的LongListSelector並且沒有顯示數據後,我將Grouping啓用爲false,並且數據出現了!也許是其他WP8(XAML?)noobs需要考慮的事情。我在後面的代碼中設置ItemSources。必須是我的結構化數據,它只是一個沒有分組的簡單對象的List <>。 – SleepyBoBos

+0

我在我的例子中顯示,如果你想要一個普通的「列表」而不是分組列表,那麼isGroupingEnabled必須設置爲false。 – Strifex

+0

@SleepyBoBos,它說這樣做在這個答案的第一句話。 – MEMark

2

LayoutMode = 「列表」 這就是你所需要的。