c#中, 如何动态移动控件位置

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了c#中, 如何动态移动控件位置相关的知识,希望对你有一定的参考价值。

在程序运行后,如何动态移动控件的位置?

参考技术A 控件有个属性(static/Dynamic?),设置D,如果想动态移动位置,那肯定得有个动态变量,这个值应该根据空间的大小来确定,这只是思路,具体还得靠你自己。 参考技术B C#中,各个控件的位置一般都是由Top和Left属性控制的,你在代码中需要移动位置的地方改变这两个选项就好了。 参考技术C 我也给你提供个方法:
Label1.Left+=50;
这段代码每执行一次,控件就会向右移动50个像素;向左就,减就行了
向下移动:
Label1.Top+=50;
参考技术D 刚做的一个简单demo。

public bool ismove = false;
public bool bigorsmall = true;
public Point poi;
public Form1()

InitializeComponent();


private void pictureBox1_MouseDown(object sender, MouseEventArgs e)

ismove = true;
poi.X = Cursor.Position.X - pictureBox1.Left;
poi.Y = Cursor.Position.Y - pictureBox1.Top;


private void pictureBox1_MouseMove(object sender, MouseEventArgs e)

if (ismove)

pictureBox1.Left = Cursor.Position.X - poi.X;
pictureBox1.Top = Cursor.Position.Y - poi.Y;



private void pictureBox1_MouseUp(object sender, MouseEventArgs e)

ismove = false;
第5个回答  推荐于2016-07-30 this.button1.Location = new System.Drawing.Point(x, y);
动态设置x,y本回答被提问者采纳

如何在Relativelayout中动态设置控件位置

参考技术A 用LayoutParams:

RelativeLayout insertLayout = (RelativeLayout)view1.findViewById(R.id.screen);//screen是一个RelativeLayout 布局的id

ImageView imgApple2 = new ImageView(MainActivity.this);
imgApple2.setBackgroundColor(Color.parseColor("#ffb6b4"));

RelativeLayout.LayoutParams layoutParams = new RelativeLayout.LayoutParams(100, 100);
layoutParams.topMargin=8;
layoutParams.leftMargin=8;
layoutParams.rightMargin=8;
layoutParams.bottomMargin=8;

insertLayout.addView(imgApple2,layoutParams);本回答被提问者采纳

以上是关于c#中, 如何动态移动控件位置的主要内容,如果未能解决你的问题,请参考以下文章

wpf怎么动态 控制控件位置c#代码

c# winform groupbox上动态生成的控件,如何让控件随着分辨率变化而自动调整位置和大小

c# winform groupbox上动态生成的控件,如何让控件随着分辨率变化而自动调整位置和大小

Windows 窗体应用程序 C# - 在调试模式下运行后选项卡控件项移动位置

C# Uwp app webbrowser 控件无法获取设备位置

c#中如何改变控件位置.?