2012-03-20 24 views
0

我有一個WinForms空面板,並且我正在向這個面板動態添加圖像。 要添加第一個圖像的中心,我只是:如何保持中心對齊動態添加到面板的圖像?

  • 獲取面板的寬度(WP)併除以2;
  • 獲取圖像的寬度(WI)併除以2;
  • WP-WI =圖像X的左側位置;

但我不能找出一些dinamiically方式來設置這個位置,當我有多個圖像。有沒有辦法計算這個X?我對嗎?有更簡單的方法嗎?

謝謝。

+1

這就是爲什麼WPF誕生了:) – 2012-03-20 20:42:33

+0

圖像是垂直疊放的嗎?或者將它們水平排列在一起,如果是這樣,當第一排沒有空間時,它們會流向下一排? – 2012-03-20 20:46:17

+0

感謝anwser @Grant。不,只有一排。 – 2012-03-20 20:48:26

回答

1

那麼,如果你只有一個排,一些在那裏你可以有Image對象的集合,說

List<Image> images

和方法

void PositionImages() 
{ 
    int totalWidth = images.Sum(img=>img.Width); 
    int startX = (panel.Width - totalWidth)/2; 
} 

應該工作你,但你需要檢查它。例如,我在這裏假設tolalWidth集合中的所有圖像是總是小於panel.Width