Question: This is my code snippet

```cs
public class Notation : INotifyPropertyChanged
{
    public event PropertyChangedEventHandler PropertyChanged;

    private Notes _note;
}

```

**How to write** `public event PropertyChangedEventHandler PropertyChanged;` **in UML Class diagram properly?**

First, I think it's:

> 
> +PropertyChanged: PropertyChangedEventHandler
> 
> 
> 

But then, I realized that it doesn't represent the `event` part of the code.

Any idea?

Answer: 
Here is the UML stereotype in the game. Just stereotype this property:

![enter image description here](https://i.stack.imgur.com/cNjG4.png)

Note that `_note` is a plain, private property.
You can define receptions in class definition. Reception is type of behavioral feature. If you define it, instance of class can accept signal events from environment.

Other way to define events in UML is using behavioral diagrams.

* Activity diagram has event element to accept events of specific types during execution.
* State Machine diagram has transitions with trigger definition, which represents event acceptance as well.
* Interaction diagram represents events as receiving or sending messages.

Behavior definitions (represented by behavioral diagrams) can be assigned to class definition as classifier behavior or owned behaviors. Owned behavior definition defines ability of owning class to react on event occurrences.

Your example just defines attribute of class, but not ability to accept event by class instance.