csharp actions

Code Example - csharp actions

                
                        //Action is a invokeable container for Mehod or function method 
//that doesnt return anything. They can accept inputs based on the generals 
//that you template on. If you need a return check out the Func Class
//example:
Action YourActionProperty = new Action(()=>{/*do something*/});
//or
Action YourActionProperty = ()=>{/*do something*/};
//or
Action<int/*Or some other types followed by others comma seperated*/> 
YourParamitarizedActionProperty =
  (x/*Each Param will be to the comma seperated types*/)=>
  {/*do some with the inputs*/});

// you can invloke them by calling their invokes.
YourActionProperty.Invoke();
YourParamitarizedActionProperty.Invoke(5);
//The last is the basic sycronous way. For a aysnc call uses
YourActionProperty.BeginInvoke();
YourParamitarizedActionProperty.BeginInvoke(5);
//although awaiting is not required should you need to await a aysnc call use
YourActionProperty.EndInvoke();

//You can also fill them with defined methods in a class if you wish, 
//but the signatures must match.
Action YourActionDefinedProperty = YourDefinedMethod;
void YourDefinedMethod()
{
  //do something
}