Share via

SerialPort.PinChanged Event


Indicates that a non-data signal event has occurred on the port represented by the SerialPort object.

 event System::IO::Ports::SerialPinChangedEventHandler ^ PinChanged;
public event System.IO.Ports.SerialPinChangedEventHandler PinChanged;
member this.PinChanged : System.IO.Ports.SerialPinChangedEventHandler 
Public Event PinChanged As SerialPinChangedEventHandler 
Public Custom Event PinChanged As SerialPinChangedEventHandler 

Event Type


Serial pin changed events can be caused by any of the items in the SerialPinChange enumeration. Because the operating system determines whether to raise this event or not, not all parity errors may be reported. As part of the event, the new value of the pin is set.

The PinChanged event is raised when a SerialPort object enters the BreakState, but not when the port exits the BreakState. This behavior does not apply to other values in the SerialPinChange enumeration.

PinChanged, DataReceived, and ErrorReceived events may be called out of order, and there may be a slight delay between when the underlying stream reports the error and when the event handler is executed. Only one event handler can execute at a time.

The PinChanged event is raised on a secondary thread. Because this event is raised on a secondary thread, and not the main thread, attempting to modify some elements in the main thread, such as UI elements, could raise a threading exception. If it is necessary to modify elements in the main Form or Control, post change requests back using Invoke, which will do the work on the proper thread.

For more information about handling events, see Handling and Raising Events.

Applies to