2012-07-06 41 views
0

我的工作在Windows Phone 7從PhotoChooserTask綁定圖像到圖像標籤與相同大小的ListBox中的Windows Phone 7

我不得不從PhotoChooserTask選擇的圖像綁定在Windows Phone 7的像瓷磚的列表框。

我有一個設計文件是這樣的:

<ListBox x:Name="lstImages" Height="530" Margin="0,10,0,0" 
        ScrollViewer.VerticalScrollBarVisibility="Hidden"> 
         <ListBox.ItemTemplate> 
          <DataTemplate> 
           <Button Style="{StaticResource PickerBoxButton}" 
           x:Name="btnDashboardItems" 
           Tag="{Binding Name}" 
           Padding="0" Margin="-18,0,-12,-45" Height="200" 
           Width="200">          
            <Button.Template> 
             <ControlTemplate> 
              <StackPanel Height="173" Width="173"> 
               <Image Height="173" Width="173" 
                 Source="{Binding Image}" /> 
              </StackPanel> 
             </ControlTemplate> 
            </Button.Template> 
           </Button> 
          </DataTemplate> 
         </ListBox.ItemTemplate> 
         <ListBox.ItemsPanel> 
          <ItemsPanelTemplate> 
           <toolkit:WrapPanel Width="450" Orientation="Horizontal" /> 
          </ItemsPanelTemplate> 
         </ListBox.ItemsPanel> 
        </ListBox> 

和我有一個類中調用的ImageList這樣的:

public class ImageList 
    { 
     public string Name { get; set; } 
     public BitmapImage Image { get; set; } 
    } 

,我結合這樣的列表框:

PhotoChooserTask task = new PhotoChooserTask(); 
task.Completed += new EventHandler<PhotoResult>(task_Completed); 
task.Show(); 

在這裏,我可以選擇任意圖片數量,所以我必須採取的列表框。

Random _Random = new Random(); 
private void task_Completed(object sender, PhotoResult e) 
     { 
      if (e.TaskResult == TaskResult.OK) 
      { 
       System.IO.Stream stream = e.ChosenPhoto; 
       BitmapImage bmp = new BitmapImage(); 
       bmp.CreateOptions = BitmapCreateOptions.None; 
       bmp.SetSource(stream); 
       img.Image = bmp; 
       img.Name = _Random.Next(int.MaxValue).ToString() + ".jpg"; 
       StateUtilities.ImageList.Add(img); 
       if (StateUtilities.ImageList != null) 
       { 
        if (StateUtilities.ImageList.Count > 0) 
        { 
         lstImages.ItemsSource = StateUtilities.ImageList; 
        } 
       }  
      } 
     } 

這裏,我能夠綁定的圖像,但圖像在不同大小的未來,但我有給定的固定尺寸(高度和寬度),以按鈕和圖像標籤,還是我得到不同的大小的圖像(不同的高度和寬度)。 我如何使圖像綁定在相同的大小?

感謝,

阿維納什

回答

0

我認爲StackPanel中會根據內容舒展。

您是否嘗試過設置MaxWidth和MaxHeight?

相關問題