簡體   English   中英

列表框不顯示WP8上本地數據庫中的所有項目

[英]Listbox not showing all items from local database on WP8

我已將DataTemplate聲明為

    <phone:PhoneApplicationPage.Resources>
    <DataTemplate x:Key="FuelUpsListBoxTemplate">

        <Grid HorizontalAlignment="Left" Width="780" ShowGridLines="True" >
            <Grid.ColumnDefinitions>
                <ColumnDefinition Width="90" />
                <ColumnDefinition Width="170" />
                <ColumnDefinition Width="170" />
                <ColumnDefinition Width="170" />
            </Grid.ColumnDefinitions>

                <Border Name="b1" Background="GreenYellow">
                    <TextBlock Foreground="Aqua"
                                Text="{Binding FillUpDate}" 
                                FontSize="{StaticResource PhoneFontSizeSmall}" 
                                Grid.Column="0" Grid.Row="0"
                                VerticalAlignment="Top"  Margin="4, 4, 4, 4"/>
                </Border>

            <TextBlock 
                Text="{Binding Oddomer}" 
                FontSize="{StaticResource PhoneFontSizeLarge}" 
                Grid.Column="1" Grid.ColumnSpan="2" 
                VerticalAlignment="Top" Margin="-36, 12, 0, 0"/>

            <TextBlock 
                Text="{Binding Fuel}" 
                FontSize="{StaticResource PhoneFontSizeLarge}" 
                Grid.Column="2" Grid.ColumnSpan="2" 
                VerticalAlignment="Top" Margin="-36, 12, 0, 0"/>

            <TextBlock 
                Text="{Binding Price}" 
                FontSize="{StaticResource PhoneFontSizeLarge}" 
                Grid.Column="3" Grid.ColumnSpan="2" 
                VerticalAlignment="Top" Margin="-36, 12, 0, 0"/>

            <CheckBox 
                IsChecked="{Binding FullTank, Mode=TwoWay}" 
                Grid.Column="3" VerticalAlignment="Top"/>

        </Grid>
    </DataTemplate>
</phone:PhoneApplicationPage.Resources>

並在xaml列表框中使用它:

                    <StackPanel Height="535" VerticalAlignment="Top" Grid.Row="0">
                        <ListBox x:Name="MainListBox" 
                        Margin="0,0,-12,0" 
                        ItemsSource="{Binding FillUpItems}"
                        ItemTemplate="{StaticResource FuelUpsListBoxTemplate}" 
                        Hold="MainListBox_Hold" />
                    </StackPanel></grid>.....

當我執行app時,只顯示數據庫中的9個項目,即使它包含20-30個項目...

這里也是viewmodel中從數據庫中選擇數據的代碼。

        var FillUpsinDB = from FillupItem todo in CarLogDB.FillUps
                            select todo;
        FillUpItems = new ObservableCollection<FillupItem>(FillUpsinDB);

當我檢查“todo”變量時,調試器說它包含db中的所有項目。

可能是因為你的StackPanel有固定的高度(535)。

順便說一句:為什么你的ListBox包裝在StackPanel中? 有必要嗎?

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM