将按钮位置值放在变量中

mar*_*ike 0 c# variables location winforms

我试图在一个变量中保存一个按钮的位置,但我不知道该怎么做.既然代码显示了按钮的x和y,我还可以分别保存x和y吗?

  Console.WriteLine(button.Location);
<X=100,Y=100>
Run Code Online (Sandbox Code Playgroud)

我希望它在var1中保存X值,在var2中保存Y值.

Mat*_*zza 12

您可以将其保存为单个Point或两个不同的整数:

Point location = button.Location;
int xLocation = button.Location.X;
int yLocation = button.Location.Y;
Run Code Online (Sandbox Code Playgroud)

然后你可以恢复这样的位置:

button.Location = location;
button.Location = new Point(xLocation, yLocation);
Run Code Online (Sandbox Code Playgroud)

注: Point是一个struct(价值型),因此改变location不会改变button.Location.换句话说,这将没有任何效果:

Point location = button.Location;
location.X += 100;
Run Code Online (Sandbox Code Playgroud)

你需要这样做:

Point location = button.Location;
location.X += 100;
button.Location = location;
Run Code Online (Sandbox Code Playgroud)

要么

button.Location = new Point(button.Location.X + 100, button.Location.Y);
Run Code Online (Sandbox Code Playgroud)