VisualizerObjectSource.TransferData(Object, Stream, Stream) Method
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Invoked when the UI-side visualizer type calls IVisualizerObjectProvider.TransferData(Stream) or IVisualizerObjectProvider.TransferObject(object).
This method can be used to define a custom message passing protocol to communicate between the
UI-side and debuggee-side visualizer types, or to invoke custom actions on the debuggee-side
visualizer type. The UI-side visualizer type can pass in arbitrary data serialized into
incomingData
and the debuggee-side visualizer type can respond with arbitrary
data serialized into outgoingData
.
public:
virtual void TransferData(System::Object ^ target, System::IO::Stream ^ incomingData, System::IO::Stream ^ outgoingData);
public virtual void TransferData (object target, System.IO.Stream incomingData, System.IO.Stream outgoingData);
abstract member TransferData : obj * System.IO.Stream * System.IO.Stream -> unit
override this.TransferData : obj * System.IO.Stream * System.IO.Stream -> unit
Public Overridable Sub TransferData (target As Object, incomingData As Stream, outgoingData As Stream)
Parameters
- target
- Object
The visualized object
- incomingData
- Stream
Data passed in from the UI-side visualizer type
- outgoingData
- Stream
Data to send back to the UI-side visualizer type
Examples
myVisObjSource.TransferData(myString, incoming, outgoing);
Remarks
Transfers data simultaneously in both directions between the debuggee and debugger sides. This data may be any sort of request for the visualizer, whether to fetch data incrementally, or to update the state of the object being visualized.
The transfer is always initiated by the debugger side. This method can be very useful if you implement a custom messaging scheme. The Deserialize and Serialize helper methods can also be useful.