2011-11-28 90 views
3

我正在創建一個應用程序,該應用程序具有照片庫,與照片庫/照片中心內置的照片庫幾乎完全相同。在Windows Phone 7.5中使用Silverlight創建照片庫

我已經看過使用網格,但我無法將數據綁定到它。我還着眼於使用DataGrid,但未包含在Windows Phone SDK中。我需要的網格將有一定數量的列,但是可變數量的行(就像我說的,就像當前內置照片庫)

有沒有人有任何建議/解決方案?

+0

http://stackoverflow.com/questions/6474353/image-photo-gallery-like-built-in-wp7 –

+0

完全重複不 - 他正在建立照片瀏覽器。我需要建立照片庫/網格。 – bfink

+0

我已經找了好幾天來解答這個問題,而且我一直都找不到它。 – bfink

回答

1

Windows Phone SDK包含模擬您在人員或照片集線器中看到的功能的全景/數據透視控件。

下面是使用此控件的代碼示例的鏈接: http://msdn.microsoft.com/en-us/library/ff431744(v=vs.92).aspx

向下滾動到頁面的樣品的控制部分,有全景樣品中的第一項。

我還建議看一下標題爲「照相機和照片」的部分。

+0

感謝您的回覆。對不起,如果我不清楚,但我正在創建網格,當您從照片集線器中選擇相冊時顯示。例如,當你點擊「相機膠捲」時,你會得到一個可以選擇的照片/視頻網格。我將如何創建類似的東西? – bfink

+1

設置網格,加載圖像,然後將控件包含在滾動查看器中 – Luke

+0

因此,我需要在代碼隱藏方面做到這一點嗎?我希望我可以用數據綁定來做到這一點,但你是否說我需要從我的代碼後面手動添加行到網格? – bfink

2

圖片庫是一個簡單的列表框,其中每一行是與圖像的水平StackPanel中,加入少許的結合,你都OK;)

2

它將與一個列表框工作,但你必須編輯其ItemsPanelTemplate和使用就像工具包中的WrapPanel控件(水平方向)。然後,您可以將ItemTemplate定義爲方形圖像。這樣,每一個新物品都會從另一個物品的右側堆疊,直到沒有更多空間,並且它會繼續放在下一行。因此,對於一定數量的列,您必須在項目模板中指定寬度(在我的示例中爲173,因此在肖像模式下,我以2列結束)。

下面是從我的項目(你應該調整綁定和名稱,以您的方案)中的一個例子:

<ListBox x:Name="lbxCategorias" ItemsSource="{Binding ChannelButtons}" 
         SelectionChanged="lbxCategorias_SelectionChanged"> 
       <ListBox.ItemsPanel> 
        <ItemsPanelTemplate> 
         <toolkit:WrapPanel Orientation="Horizontal" /> 
        </ItemsPanelTemplate> 
       </ListBox.ItemsPanel> 
       <ListBox.ItemTemplate> 
        <DataTemplate> 
         <Image Source="{Binding BigButtonIconPath}" Width="173" Height="173" Margin="0 0 12 10" /> 
        </DataTemplate> 
       </ListBox.ItemTemplate> 
      </ListBox> 
+0

我打算髮布這個答案,如果它不在這裏。FWIW,圖片集線器中的圖像爲四列96x96。 –