What is the difference between Behaviors and Event Triggers?


In Xamarin.Forms you have Behaviors that perform certain actions on certain events. For example checking if input is valid on a text change event.

This morning I started reading up on Triggers, there is a certain type of trigger called the Event Trigger that pretty much does the same thing as a Behavior. Even the sample performs the same action.

double result;
bool isValid = Double.TryParse (entry.Text, out result);
entry.TextColor = isValid ? Color.Default : Color.Red;

So my question: What is the difference between Behaviors and Event Triggers?

Triggers are objects that contain one or more actions and invoke those actions in response to some stimulus. One very common trigger is one that fires in response to an event (an EventTrigger). Other examples might include a trigger that fires on a timer, or a trigger that fires when an unhandled exception is thrown.

A behavior does not have the concept of invocation; instead, it acts more as an add-on to an object: optional functionality that can be attached to an object if desired. It may do certain things in response to stimulus from the environment, but there is no guarantee that the user can control what this stimulus is: it is up to the behavior author to determine what can and cannot be customized.

For More Info,

See This


See This