Because the Size class is a value type (Structure in Visual Basic, struct in Visual C#), it is returned by value, meaning accessing the property returns a copy of the size of the control.So, adjusting the Width or Height properties of the Size returned from this property will not affect the Width or Height of the control.To adjust the Width or Height of the control, you must set the control's Width or Height property, or set the Size property with a new Size.
To maintain better performance, do not set the Size of a control in its constructor.The preferred method is to override the DefaultSize property.
On Windows Server 2003 systems, the size of a Form is restricted by the maximum pixel width and height of the monitor.
The following code example adds a Button to a form and sets some of its common properties.The example anchors the button to the bottom-right corner of the form so it keeps its relative position as the form is resized.Next it sets the BackgroundImage and resizes the button to the same size as the Image.The example then sets the TabStop to true and sets the TabIndex property.Lastly, it adds an event handler to handle the Click event of the button.This example requires that you have an ImageList named imageList1.
// Add a button to a form and set some of its common properties.privatevoid AddMyButton()
// Create a button and add it to the form.
Button button1 = new Button();
// Anchor the button to the bottom right corner of the form
button1.Anchor = (AnchorStyles.Bottom | AnchorStyles.Right);
// Assign a background image.
button1.BackgroundImage = imageList1.Images;
// Specify the layout style of the background image. Tile is the default.
button1.BackgroundImageLayout = ImageLayout.Center;
// Make the button the same size as the image.
button1.Size = button1.BackgroundImage.Size;
// Set the button's TabIndex and TabStop properties.
button1.TabIndex = 1;
button1.TabStop = true;
// Add a delegate to handle the Click event.
button1.Click += new System.EventHandler(this.button1_Click);
// Add the button to the form.this.Controls.Add(button1);