Click here to Skip to main content
15,895,777 members
Home / Discussions / C#
   

C#

 
GeneralRe: User Control Question - Changing Location and Size Pin
Roger Wright1-Jan-10 4:36
professionalRoger Wright1-Jan-10 4:36 
QuestionRe: User Control Question - Changing Location and Size Pin
Eric Dahlvang31-Dec-09 23:01
Eric Dahlvang31-Dec-09 23:01 
AnswerRe: User Control Question - Changing Location and Size Pin
Roger Wright1-Jan-10 4:33
professionalRoger Wright1-Jan-10 4:33 
GeneralRe: User Control Question - Changing Location and Size Pin
DaveyM691-Jan-10 5:10
professionalDaveyM691-Jan-10 5:10 
GeneralRe: User Control Question - Changing Location and Size Pin
Roger Wright1-Jan-10 22:06
professionalRoger Wright1-Jan-10 22:06 
GeneralRe: User Control Question - Changing Location and Size Pin
DaveyM692-Jan-10 2:59
professionalDaveyM692-Jan-10 2:59 
GeneralRe: User Control Question - Changing Location and Size Pin
Roger Wright2-Jan-10 5:17
professionalRoger Wright2-Jan-10 5:17 
AnswerRe: User Control Question - Changing Location and Size Pin
Nicholas Butler31-Dec-09 23:46
sitebuilderNicholas Butler31-Dec-09 23:46 
This will not work:

Size.Height = 100;
Size.Width = 100;

Location.X = 100;
Location.Y = 100;


This is because Size is a System.Drawing.Size and Location is a System.Drawing.Point. Both of these types are structs, which means that they are passed by value not by reference.

So when you write:

Size size = Size;
Point location = Location;


you are actually getting copies of the structs, not a reference to the original data.

This means it makes no sense to try to change, say the Height of the copy of the Control's Size and the compiler flags this as an error for you.

As Eric said, you can replace the underlying Size and Point like this:

Size = new Size( 100, 100 );
Location = new Point( 100, 100 );


This works because in the Control class, the properties have setters as well as getters:

partial class Control
{
  public Size Size { get; set; }
  public Point Location { get; set; }
}


Now, if you add new properties to your Control called Size and Location, they have no relation to the base class properties with the same names. The new properties just 'hide' the base class properties. The compiler warns you about doing this, as it is legal, although confusing and not recommended. You can add the new keyword to get rid of the warning, but this is also confusing and not recommended.

Nick

----------------------------------
Be excellent to each other Smile | :)

GeneralRe: User Control Question - Changing Location and Size Pin
Roger Wright1-Jan-10 4:25
professionalRoger Wright1-Jan-10 4:25 
AnswerRe: User Control Question - Changing Location and Size Pin
DaveyM6931-Dec-09 23:50
professionalDaveyM6931-Dec-09 23:50 
GeneralRe: User Control Question - Changing Location and Size Pin
Roger Wright1-Jan-10 4:28
professionalRoger Wright1-Jan-10 4:28 
Questionmultiple lines string Pin
Member 59031031-Dec-09 18:57
Member 59031031-Dec-09 18:57 
AnswerRe: multiple lines string Pin
Abhijit Jana31-Dec-09 19:30
professionalAbhijit Jana31-Dec-09 19:30 
GeneralRe: multiple lines string Pin
Member 59031031-Dec-09 19:42
Member 59031031-Dec-09 19:42 
GeneralRe: multiple lines string Pin
Nicholas Butler1-Jan-10 0:15
sitebuilderNicholas Butler1-Jan-10 0:15 
AnswerRe: multiple lines string Pin
Eric Dahlvang1-Jan-10 13:50
Eric Dahlvang1-Jan-10 13:50 
QuestionHow to display a 3D(WPF) in a WinFormApplication Pin
arucied31-Dec-09 14:37
arucied31-Dec-09 14:37 
AnswerMessage Closed Pin
31-Dec-09 19:39
stancrm31-Dec-09 19:39 
GeneralRe: How to display a 3D(WPF) in a WinFormApplication Pin
arucied1-Jan-10 17:41
arucied1-Jan-10 17:41 
QuestionConverting a nullable type to a non nullable type Pin
Jeroen De Dauw31-Dec-09 13:34
Jeroen De Dauw31-Dec-09 13:34 
AnswerRe: Converting a nullable type to a non nullable type Pin
Rob Philpott31-Dec-09 22:39
Rob Philpott31-Dec-09 22:39 
GeneralRe: Converting a nullable type to a non nullable type Pin
Jeroen De Dauw1-Jan-10 1:17
Jeroen De Dauw1-Jan-10 1:17 
AnswerRe: Converting a nullable type to a non nullable type Pin
Eric Dahlvang31-Dec-09 23:22
Eric Dahlvang31-Dec-09 23:22 
GeneralRe: Converting a nullable type to a non nullable type Pin
Jeroen De Dauw1-Jan-10 1:19
Jeroen De Dauw1-Jan-10 1:19 
GeneralRe: Converting a nullable type to a non nullable type Pin
Eric Dahlvang1-Jan-10 8:48
Eric Dahlvang1-Jan-10 8:48 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.