public bool CanExecute(object parameter) { if (m_CanExecute == null) { return(true); } if (m_CanExecute.IsStatic || m_CanExecute.IsAlive) { if (parameter == null && typeof(T).GetTypeInfo().IsValueType) { return(m_CanExecute.Execute(default(T))); } if (parameter == null || parameter is T) { return(m_CanExecute.Execute((T)parameter)); } } return(false); }
public bool CanExecute(object parameter) => m_CanExecute == null || (m_CanExecute.IsStatic || m_CanExecute.IsAlive) && m_CanExecute.Execute();