ich eine Toolbar mit einigen Tasten zu schaffen, und ich mag, dass jede Taste auf den er ist Datacontext angebracht Ansichtsmodell nach einem anderen Befehl auszuführen, so dass ich erstellt, wenn wie folgt aus:Usercontrol mit aussetzbar Befehl auf WPF
public readonly DependencyProperty NewCommandProperty = DependencyProperty.Register(
"NewCommand", typeof(ICommand),
typeof(VirtueGridToolbar));
public ICommand NewCommand
{
get
{
return (ICommand)GetValue(NewCommandProperty);
}
set
{
SetValue(NewCommandProperty, value);
}
}
public GridToolbar()
{
InitializeComponent();
}
diese
und die xAML der Steuerung ist:
<UserControl x:Class="Virtue.Modules.Library.Controls.GridToolbar"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
<ToolBar Background="Transparent">
<ToolBar.Items>
<Button x:Name="NewButton"
Width="25"
Height="25"
ToolTip="Novo"
Command="{Binding NewCommand}">
<Image Source="{DynamicResource NewLarge}" />
</Button>
<Button x:Name="EditButton"
Width="25"
Height="25"
ToolTip="Editar">
<Image Source="{DynamicResource EditLarge}" />
</Button>
<Button x:Name="DeleteButton"
Width="25"
Height="25"
ToolTip="Excluir">
<Image Source="{DynamicResource DeleteLarge}" />
</Button>
<Separator />
<Button x:Name="SaveButton"
Width="25"
Height="25"
ToolTip="Excluir">
<Image Source="{DynamicResource SaveLarge}" />
</Button>
</ToolBar.Items>
</ToolBar>
</UserControl>
Aber wenn ich hinzufügen, das Usercontrol zu einem anderen Steuerelement und führen den Befehl
<V:GridToolbar NewCommand="{Binding Path=New}" />
Der Befehl wird nicht ausgeführt.
Irgendwelche Vorschläge?
TKS, Diego
Dies sieht im Wesentlichen die gleiche Frage wie diese (außer mit ICommand statt String-Eigenschaften): http://StackOverflow.com/Questions/1192100/how-to-achieve-Databinding-with-an-user-control -in-wpf/ –
mögliches Duplikat von [Wie erkennt man eine unterbrochene WPF-Datenbindung?] (http://stackoverflow.com/questions/337023/how-to-detect-broken-wpf-data-binding) –