我正在使用MVVM。如何在WPF中的StackPanel的MouseEnter上執行命令綁定?
<ItemsControl ItemsSource="{Binding AllIcons}" Tag="{Binding}">
<ItemsControl.ItemTemplate>
<DataTemplate>
<StackPanel>
<Label HorizontalAlignment="Right">x</Label>
<Image Source="{Binding Source}" Height="100" Width="100" />
<Label HorizontalAlignment="Center" Content="{Binding Title}"/>
</StackPanel>
</DataTemplate>
</ItemsControl.ItemTemplate>
</ItemsControl>
看起來很好。如果我用這個命令把一個按鈕,在堆疊面板:
<Button Command="{Binding Path=DataContext.InvasionCommand, RelativeSource={RelativeSource FindAncestor, AncestorType={x:Type ItemsControl}}}" CommandParameter="{Binding}"/>
我能捕捉到命令。但是,我想在鼠標進入堆棧面板時執行命令綁定,而不是單擊按鈕。
任何想法?
有什麼辦法可以用MVVM架構來做到這一點? – Daniel 2010-06-30 19:35:41
當然,您可以將該依賴屬性綁定到您的視圖模型的命令,如: 'xmlns:view =「使用MouseEnterCommandBinding類導入您的名稱空間」 ... <型號:YourModel /> ' 順便說一句,的UIElement不包含CommandParameter財產,直到它實現ICommandSource接口,所以您需要更改SetMouseEnterCommand方法反映這個事實。 –
STO
2010-07-01 08:58:00