2013-09-22 4 views
0

Я обращаюсь к книгам Google api для отображения уменьшенных изображений на моей странице результатов в моем приложении. Вещь, которую я хочу сделать, - это когда пользователь сразу обращается к списку книг, я хочу показать ' загрузка 'png изображения из моей папки с изображениями, так как потребуется некоторое время для загрузки эскиза из google books api. то по одному оригинальное эскизное изображение загрузится поверх загружаемых изображений, что даст пользователю приятный опыт. Дело в том, что как я могу восстановить изображения (например, после загрузки загрузочных изображений, которые я хочу загрузить с реальным миниатюром) ?. вот соответствующий код. любая идея, как я могу сделать это соответствующим образом?windows phone 8 longlistselector rebinding image

При использовании преобразователей я не уверен, как определить, какое изображение будет отображаться когда?

<DataTemplate x:Key="BooksItemTemplate"> 
     <Grid Margin="{StaticResource PhoneTouchTargetOverhang}" Background="Transparent"> 
      <Grid.ColumnDefinitions> 
       <ColumnDefinition Width="Auto"/> 
       <ColumnDefinition Width="*"/> 
      </Grid.ColumnDefinitions> 
      <Button Click="Button_Click_1" /> 
      <Image Source="Images/loading.jpg" Height="150" Width="150"/> 
      <StackPanel Grid.Column="1" VerticalAlignment="Top"> 
       <TextBlock Text="{Binding BookTitle}" Style="{StaticResource PhoneTextNormalStyle}" TextWrapping="Wrap" FontFamily="{StaticResource PhoneFontFamilySemiBold}"/> 
       <TextBlock Text="{Binding Identificationno}" Style="{StaticResource PhoneTextNormalStyle}" TextWrapping="Wrap" FontFamily="{StaticResource PhoneFontFamilySemiLight}"/> 
      </StackPanel> 
     </Grid> 
    </DataTemplate> 

<phone:LongListSelector x:Name="bookslist" 
           Background="Transparent" 
           IsGroupingEnabled="False"     
           ItemTemplate="{StaticResource BooksItemTemplate}"/> 


public BookCategoriesViewModel bookcategoriesvm; 
    public BooksListing() 
    { 
     InitializeComponent(); 
     bookcategoriesvm = new BookCategoriesViewModel(); 
    } 

    protected override void OnNavigatedTo(System.Windows.Navigation.NavigationEventArgs e) 
    { 
     base.OnNavigatedTo(e); 
     string categoryid = string.Empty; 
     if (NavigationContext.QueryString.TryGetValue("catid", out categoryid)) 
     { 
      bookcategoriesvm.GetBookcategories(Convert.ToInt64(categoryid));    
     } 

     bookslist.ItemsSource = bookcategoriesvm.BooksCategoriesList; 
    } 

ответ

1

Самый простой, вероятно, просто иметь два изображения друг на друга (в «загрузки изображения» в нижней части), как это всякий раз, когда миниатюра закончит загрузку, он будет просто скрыть свой загрузочный образ.

Смежные вопросы