Reputation: 63
Many apologies to add to the massive list of similar binding error questions out there, but after hours of searching I can't find a solution that will work for me!
I am trying to test a ViewModel in WPF, but the ICommand Button code is causing the standard binding error:
System.Windows.Data Error: 40 : BindingExpression path error: 'CheckforNewHubs' property not found on 'object' ''HubManagerViewModel' (HashCode=13328197)'. BindingExpression:Path=CheckforNewHubs; DataItem='HubManagerViewModel' (HashCode=13328197); target element is 'Button' (Name='CheckForNewHubsButton'); target property is 'Command' (type 'ICommand')
my command (in HubManagerViewModel) is:
public ICommand CheckForNewHubs
{
get
{
return new RelayCommand(this.CheckForNewHubsExecute, this.CanSendHubManagerCommands);
}
set { }
}
and my DataContext is initiated in an XAML grid as:
<Grid.DataContext>
<ViewModels:HubManagerViewModel/>
</Grid.DataContext>
I have tried explicitly setting the dataContext of the button like this:
<Button.DataContext>
<ViewModels:HubManagerViewModel/>
</Button.DataContext>
Can anyone tell me what I'm doing wrong? At this point I'm just desperate for some new insight.
Thanks for your time in advance!
Upvotes: 4
Views: 8023
Reputation: 17083
You have used Binding Path CheckforNewHubs
but it should be CheckForNewHubs
.
Upvotes: 8