0
以下はオブジェクトをシリアライズするコードです。フォームをシリアル化してアプリケーションの設定で保存するには、これが必要です。vb.netでフォームをシリアル化する方法は?
私はブレークポイントを設定し、それがNothingまたはNull(以下のコードで3行目)を返すことに気づいた
Public Function SerializeObject(ByVal o As Object) As String
If Not o.GetType().IsSerializable Then
Return Nothing
End If
Using stream As New MemoryStream()
Dim ser As New System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
ser.Serialize(stream, o)
MessageBox.Show(Convert.ToBase64String(stream.ToArray))
Return Convert.ToBase64String(stream.ToArray)
End Using
End Function
選択肢があれば、私はより多くを知っているのが大好きです。
[クラスのソースコードを持っていないときに、オブジェクトの.NETバイナリシリアル化を行うことはできますか?](http://stackoverflow.com/質問/ 13166105/is-it-possible-to-do-net-binary-serialization-of-object-you-you-dont -have) – GSerg
フォームインスタンスを通常作成するために必要なメタデータを保存するだけです。フォーム名と必要なctorパラメータのようなもの。 – Plutonix
フォーム全体をシリアライズすることは忘れてしまいます。それは意味をなさない。あなたにとって重要なプロパティを設定にバインドすることができます。この方法では、各フォームを読み込むと、それらのプロパティは設定から読み込まれます。 –