C# c语言中图片框的序列化过程#

C# c语言中图片框的序列化过程#,c#,serialization,C#,Serialization,关于序列化和反序列化的大多数示例都是针对文本字符串的。一个简单的例子是如何序列化和反序列化一个带有图像的图片框,这是我真正想要开始的。试图实现的是将图片框的属性保存在文件中。这方面的一个例子是,下面图片框的序列化将涉及什么过程 private void creatpic(object sender, EventArgs e) { PictureBox pb = new PictureBox(); pb.SizeMode = PictureBoxSizeMode.Normal;

关于序列化和反序列化的大多数示例都是针对文本字符串的。一个简单的例子是如何序列化和反序列化一个带有图像的图片框,这是我真正想要开始的。试图实现的是将图片框的属性保存在文件中。这方面的一个例子是,下面图片框的序列化将涉及什么过程

private void creatpic(object sender, EventArgs e)
{
     PictureBox pb = new PictureBox();
     pb.SizeMode = PictureBoxSizeMode.Normal;
     pb.Location = new Point(100, 75);
     pb.MouseMove += new MouseEventHandler(pb_MouseMove);
     pb.MouseDown += new MouseEventHandler(pb_MouseDown);
     pb.MouseUp += new MouseEventHandler(pb_MouseButtonUp);
     pb.Image = test.Properties.Resources.track_45;

     pb.ContextMenuStrip = contextMenuStrip1;
     this.Controls.Add(pb);
}
除了序列化之外,保存图片框属性的另一种方法也会有很大帮助吗?
谢谢。

序列化是不可能的(几乎对于WinForms中的每个控件)。定义一个类,该类定义要序列化的属性。不要序列化图形或图像对象,而是将文件名另存为字符串。实例化该类并将值分配给要为给定控件保存的属性。确保将类标记为
,并使用该对象“序列化”表单控件

您可能还希望为希望序列化的每种类型的控件创建一个自定义类。最好在返回控件类型实例的类中包含一个共享方法。通过将控件作为参数传递给另一个创建此数据类型实例的共享方法也很好

答案来自