2011-12-07 9 views
1

私はすべてのアイテムについて4枚の写真でリストボックスを作成しました。それは速く、すべての甘くて素敵ですが、私は画面の解像度に応じてこのdinamicalyを行う方法がわかりません。ダイナミックスタックパネルスタイルwp7

現在のところ、90x90 + 5マージンの行に4枚の写真がありますが、画面解像度が4枚しかサポートできない場合はどうすればいいですか?例えば、私が電話機を傾けた場合、私は赤色になり、320×480の解像度も導入する予定です。

<ListBox Height="646" HorizontalAlignment="Left" Margin="6,19,0,0" Name="MainListbox" VerticalAlignment="Top" Width="444" ScrollViewer.VerticalScrollBarVisibility="Visible" > 
     <ListBox.ItemsPanel> 
      <ItemsPanelTemplate> 
       <VirtualizingStackPanel Orientation="Vertical"/> 
      </ItemsPanelTemplate> 
     </ListBox.ItemsPanel> 
    </ListBox> 

    private void GetDataToBind(List<string> images, int spliter) 
    { 

     for (int i = spliter; i < images.Count; i += spliter) 
     { 
      StackPanel temp = new StackPanel(); 
      temp.Orientation = System.Windows.Controls.Orientation.Horizontal; 
      for (int j = i - spliter; j < i && j < images.Count + spliter; j++)     
      { 
       Grid tempGrid = new Grid(); 
       Rectangle temprect = new Rectangle(); 
       temprect.Fill = new SolidColorBrush(Colors.White); 
       temprect.Height = 90; 
       temprect.Width = 90; 
       tempGrid.Children.Add(temprect); 
       tempGrid.Children.Add(GetImageSourceFromString(images[j])); 
       temp.Children.Add(tempGrid); 

      } 
      MainListbox.Items.Add(temp); 
     } 

    } 

intスプリッタは、1つの行にいくつの画像があるかを決定します。

解決方法私はラップパネル、LazyListboxに興味がありません。誰かが動的なスタイルや何かエレガントなものでこれを解決する方法を知っていますか?

最高のお礼

答えて

0

Ku6oprによれば、すべてのデバイスの画面解像度は480x800です。これは将来の低コストデバイスの導入に伴い変更される予定ですが、厳密に定義された解像度(320x480)も備えています。

実際には2つの画面フォーマットが使用できます。それで解決のためにデバイスを調べ、それに応じてスタイルを決めるのは簡単なことです。ただし、動的である必要はありません.2つのスタイル(解像度ごとに1つずつ)を設定して、報告された解像度に従ってスタイリングを適用できます。

+0

また、ノキアも異なる解像度を持つでしょう。 http://www.istartedsomething.com/20110214/evidence-of-different-screen-resolution-for-nokias-concept-windows-phone-7/ –

+0

私が知る限り、解像度320x480は仕様から削除されました。また、Nokia特有の決議は現実には起こりそうもない。 – Ku6opr

+0

確かに....ノキアは結局同じ解像度を持つことに気づきました。しかし、そのようなスタイルをハードコードするのは危険だとは思わないでください。もし新しい解像度のデバイスが出たら、私は頭を傷つけるでしょう:( –

0

すべてのWP7デバイスの画面解像度は480x800です。いくつかの画像がスクリーンに収まらないことを恐れる必要はありません。

+0

私は彼らが(320×480)を紹介する赤を持っています:http://www.ginktage.com/2011/07/retrieve-the-screen-resolution-of-windows-phone-7-using- c/ –