YMELS
YMELS

Reputation: 153

Visual Basic Power Packs

I'm using visual studio 2010, I want to create several OvalShapes from VB PowerPacks in a Windows Form C# Application, but I don't want to drag them from the Toolbox instead I want to create them manually, the problem is that if I declared them as variables, they won't appear in the Form, how can I make them appear, thanks...

Code:

using System; 
using System.Collections.Generic; 
System.ComponentModel; 
using System.Data; 
using System.Drawing; 
using System.Linq; 
using System.Text; 
using Microsoft.VisualBasic.PowerPacks; 
using System.Windows.Forms; 

namespace VB_PP 
{ 
  public partial class Form1 : Form 
   { 
    OvalShape[] OS_Arr; 
    public Form1() 
    { 
     InitializeComponent(); 
     OS_Arr = new OvalShape[15]; //I will do some coding on the array of those OvalShapes,like move them with a Timer... 
    } 
   } 
 }

Upvotes: 2

Views: 4302

Answers (1)

Gabriel GM
Gabriel GM

Reputation: 6639

What you want is something like this :

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using Microsoft.VisualBasic.PowerPacks;

namespace VBPowerPack
{
    public partial class Form1 : Form
    {
        private ShapeContainer shapeContainer;  //Container that you're gonna place into your form
        private Shape[] shapes;                 //Contains all the shapes you wanna display

        public Form1()
        {
            InitializeComponent();

            shapes = new Shape[5];              //Let's say we want 5 different shapes

            int posY = 0;
            for (int i = 0; i < 5; i++)
            {
                OvalShape ovalShape = new OvalShape();      //Create the shape you want with it's properties
                ovalShape.Location = new Point(50, posY);
                ovalShape.Size = new Size(75, 25);
                shapes[i] = ovalShape;                      //Add the shape to the array

                posY += 30; 
            }

            shapeContainer = new ShapeContainer();
            shapeContainer.Shapes.AddRange(shapes);         //Add the array of shapes to the ShapeContainer
            this.Controls.Add(shapeContainer);              //Add the ShapeContainer to your form
        }
    }
}

Upvotes: 3

Related Questions