Я пытаюсь вставить некоторые скопированные объекты, используя класс буфера обмена.
<Serializable()> Public Class DogsZoo
Public Property Dogs As List(Of Dog)
Public Property Workers As List(Of Worker)
Public Sub New(dogs As List(Of Dog), workers As List(Of Worker))
Me.Dogs = dogs
Me.Workers = workers
End Sub
End Class
Dim myDogsZoo = myCity.GetDogsZoo()
Clipboard.SetData("dogs", myDogsZoo)
' bla bla , some actions '
If Not Clipboard.ContainsData("dogs") Then Throw New Exception("Clipboard")
' here I obtain Nothing !?'
Dim clipboardObject = Clipboard.GetData("dogs")
Проверка Clipboard.ContainsData (myFormat) проходит успешно, но когда я пытаюсь получить данные, я получаю нулевое значение (Nothing). Это правильное поведение?
PS.
C # или VB.NET ответы оба в порядке.
PPS.
Я должен признать, что я использовал вышеописанный метод без каких-либо проблем с буфером обмена, когда типы данных просты (общий список). Теперь я изменил объект для хранения в памяти на пользовательский ... и с того времени ... эта проблема ...