两个PictureBox控件有两种不同的forms
我有两个不同forms的两个图片框。
我想将firstpicturebox的图像传输到picturebox1。
所以,任何人都可以帮助并提供相同的解决方案。
您可以使用Form2 Constructor发送它
试试这个:
Form1中:
Form2 form2 = null; private void button1_Click(object sender, EventArgs e) { form2 = new Form2(pictureBox1.Image); form2.Show(); }
表格2:
public Form2(Image pic1) { InitializeComponent(); pictureBox1.Image = pic1; }
你真的在一个问两个问题:
1 – 如何将一个PictureBox的内容放入另一个PictureBox?
2 – 如何从另一个表单访问一个表单的控件等?
问题1很简单: pictureBox1.Image = pictureBox2.Image;
问题2的答案也不难,但有很多方法可以做到,选择一个可能取决于你想用两种forms做什么。
基本方法是始终获得对其他表单的有效引用。
这是一个通用的方法:
什么是正确的时刻? 假设form1是在programm的启动时创建的,form2是由form1中的某个动作创建的,你可以在创建和显示时获得对form2的引用:
form2 = new Form2(this); form2.Show();
这可以是单击按钮,甚至可以在form1的load事件中。
请注意,我已在构造函数中提交了this
的引用! 这是将form1的引用传递给新表单的好方法。 因此,form2中的构造函数应如下所示:
public Form2(Form1 form1_) { InitializeComponent(); form1 = form1_; }
最后一步是将控件公开,您需要访问它们。 转到Designer.cs文件并更改声明
private System.Windows.Forms.PictureBox pictureBox1;
至
public System.Windows.Forms.PictureBox pictureBox1;
完成。
要么…
如果您有许多表单都需要访问一个PictureBox,您也可以尝试这样:在programm.cs文件中声明一个静态全局引用,如下所示:
static void Main() { Application.EnableVisualStyles(); Application.SetCompatibleTextRenderingDefault(false); Application.Run(new Form1()); } public static PictureBox thePictureBox;
然后在form1中填写引用
Program.thePictureBox = pictureBox1;
现在您也可以以其他所有forms引用它:
上述就是C#学习教程:两个PictureBox控件有两种不同的forms分享的全部内容,如果对大家有所用处且需要了解更多关于C#学习教程,希望大家多多关注—计算机技术网(www.ctvol.com)!
myNextPictureBox42.Image = Program.thePictureBox.Image;
本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。
ctvol管理联系方式QQ:251552304
本文章地址:https://www.ctvol.com/cdevelopment/989316.html