is there way how to get name ov event from Lambda expression like with property ( Retrieving Property name from lambda expression ) ?
Thanks
Yes, it's just like getting the property name, but you must do it in the class that defines the event.
public class Foo
{
public event EventHandler Bar;
public string BarName
{
get
{
return this.GetEventName(() => this.Bar);
}
}
private string GetEventName(Expression<Func<EventHandler>> expression)
{
return (expression.Body as MemberExpression).Member.Name;
}
}
Enjoy.
No. C# lambdas don't support events, so there is no way of representing this. You'll have to use reflection.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With