title: CanExecute() returns true and button is still disabled
body: <p>I have a <code>BottomAppBar.AppBarButton</code> in a Windows Phone specific page, that is bound to a relay command. The code, binding and viewmodel implementation have all been used in basically the same way on other pages in the project and works exactly as expected there.</p>
  
  <p>The issue in this particular scenario is that the button remains disabled even after raising the <code>.RaiseCanExecuteChanged()</code> method, and the <code>CanExecute()</code> returns <code>true</code>.</p>
  
  <p>I originally thought that it might be due to excess calls to manually raising the notification with property changes, so have tightened that part of my code so that the method is only raised as needed, and when it is needed to change the button's status. Even still, the button remains disabled despite <code>CanExecute()</code> returning <code>true</code>.
  If I comment out all the checks in <code>CanExecute()</code> and default to true, the button is enabled as expected, and when tapped fires the expected <code>Execute()</code> function, so it appears that the initialization of the <code>RelayCommand</code> is ok. If I then let the checks back in, and run step through each time <code>CanExecute()</code> is fired, when it returns true, the button doesn't become enabled.</p>
  
  <p>Any ideas? For what its worth, I've added code below, but I don't think that is the cause.</p>
  
  <p><code>RelayCommand</code> class is the standard class that comes with the HubApp in VS, so I will omit that code.</p>
  
  <p>last line of the viewmodel constructor is the RelayCommand;</p>
  
  <pre><code>AddStrikeTeamCommand = new RelayCommand(async() =&gt; await AddStrikeTeam(), CanAddStrikeTeam);
  </code></pre>
  
  <p>Can Add is;</p>
  
  <pre><code>private bool CanAddStrikeTeam()
  {
      //if (NameWorking == string.Empty) return false;
      //if (FactionWorking == string.Empty) return false;
      //if (PointsLimitWorking &lt; 1) return false;
      //if (!IsValidTeamWorking) return false;
      return true;
  }
  </code></pre>
  
  <p>And finally, the button binding</p>
  
  <pre><code>&lt;AppBarButton x:Name="accept" Icon="Accept" Label="accept"
                Command="{Binding AddStrikeTeamCommand}"/&gt;
  </code></pre>