2011-11-24 2 views
0

Эксперты,Показать изображения - C#/Silverlight

Я занимаюсь разработкой приложений в Windows Phone, где мне нужно, чтобы отображать изображения в экране в виде таблицы (2 изображения в строке и столбцах будут расти по мере необходимости). Количество изображений будет динамическим, и я буду иметь информацию во время выполнения. Мне нужно, чтобы отобразить все изображения

Please see the Image.

вы можете, пожалуйста, дайте мне знать, как поступить .. изображения будут от интернета URL.

Паван

+0

Будут ли все изображения одинаковой ширины и высоты? –

+0

да .. все изображения с одинаковым точным размером – Pavan

ответ

2

Это идеальный случай для использования WrapPanel от Silverlight Toolkit.

В основном это будет именно то, что вам нужно, с одной строкой кода.

+0

Я раньше использовал WrapPanel для текстовых элементов, упорядоченных таким же образом, и действительно WrapPanel - это то, что вы ищете! :) – Abbas

+0

Я хочу добавить изображения пропорционально, потому что я не знаю, сколько изображений будет там. – Pavan

+0

И? Добавьте их в «ObservableCollection», и проблем нет. –

0

Я как бы начинаю, но я сделал это с 4 изображениями и формой полного экрана. Я не пытаюсь использовать C# для мобильных устройств. Попробуйте с этим :) код, он поместит вам всего 4 изображения на экране типа anny Form1, чтобы запустить @ center экрана и добавить его в полноэкранный режим. После того, как вы добавите 4 imageBox, чтобы сформировать и установить их изображение или загрузить его, это установит 1 изображение на 1/4 полного экрана. :

public Form1() 
     { 
      InitializeComponent(); 
     } 

     private void Form1_Load(object sender, EventArgs e) 
     { 
      this.Location = new Point(Screen.PrimaryScreen.WorkingArea.Left, Screen.PrimaryScreen.WorkingArea.Top); 
      this.Size = new Size(Screen.PrimaryScreen.Bounds.Width, Screen.PrimaryScreen.Bounds.Height); 
      pictureBox1.Size = new Size(this.Width - this.Width/2, this.Height - this.Height/2); 
      pictureBox1.Location = new Point(0, 0); 
      pictureBox2.Size = new Size(this.Width - this.Width/2, this.Height - this.Height/2); 
      pictureBox2.Location = new Point(this.pictureBox1.Width,0); 
      pictureBox3.Size = new Size(this.Width - this.Width/2, this.Height - this.Height/2); 
      pictureBox3.Location = new Point(0, this.pictureBox1.Height); 
      pictureBox4.Size = new Size(this.Width - this.Width/2, this.Height - this.Height/2); 
      pictureBox4.Location = new Point(this.pictureBox2.Width, this.pictureBox3.Height); 
      // this.Controls.Add(pictureBox1); 
     } 
    } 
} 
Смежные вопросы