【发布时间】:2010-08-30 02:24:14
【问题描述】:
这是我的第一个序列化程序。
尝试序列化按钮控件时出错。
public Form1()
{
InitializeComponent();
CheckSerialization();
Button btn = btnSerialized;
}
public void CheckSerialization()
{
Stream write = File.OpenWrite(@"C:\ser.bin");
BinaryFormatter serial = new BinaryFormatter();
serial.Serialize(write, btnSerialized);
write.Close();
}
private void btnSerialized_Click(object sender, EventArgs e)
{
FileStream fs = new FileStream(@"C:\ser.bin",FileMode.Open);
BinaryFormatter bf= new BinaryFormatter();
object obj = bf.Deserialize(fs);
Button button12 = (Button)obj;
button1 = button12;
button1.Location = new Point(0, 0);
}
在程序集“System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089”中键入“System.Windows.Forms.Button”未标记为可序列化。**
如何将此对象标记为可序列化?
【问题讨论】:
-
检查一下 - 这可能会有所帮助 - 代理序列化 - codeproject.com/kb/dotnet/Surrogate_Serialization.aspx
标签: c# winforms serialization