2012-02-02 46 views
0

我想知道如何將選定的項目從treeview/HierarchicalDataTemplate傳遞給命令?樹視圖上下文菜單 - 將選定的項目傳遞給命令?

這是我到目前爲止的代碼,它顯示了上下文菜單,但我還沒有將命令綁定到它。命令綁定是很容易的部分,但我怎麼知道它來自哪個節點?

<HierarchicalDataTemplate 
    DataType="{x:Type viewModel:UsersViewModel}" 
    ItemsSource="{Binding Children}"> 
    <StackPanel Orientation="Horizontal"> 
     <Image Width="16" Height="16" Margin="3,0" Source="Images\Region.png" /> 
     <TextBlock Text="{Binding UserName}"> 
      <TextBlock.ContextMenu> 
        <ContextMenu> 
         <MenuItem Header="Edit" /> 
         <MenuItem Header="Delete"/> 
        </ContextMenu> 
       </TextBlock.ContextMenu> 
     </TextBlock> 
    </StackPanel> 
</HierarchicalDataTemplate> 

回答

1

只是{Binding}應該是整個項目。

(將它傳遞給Command綁定的CommandParameter,在ExecuteCanExecute它將成爲方法的參數(你需要再投放到項目型))

+0

你能提供一個樣本?我無法讓它工作。但從我的研究中,我發現這是做到這一點的正確方法。我會標記爲現在回答。 – rreeves 2012-02-06 22:40:52

+0

@BatMasterson:[看這個答案](http://stackoverflow.com/questions/6914867/why-cant-i-use-datacontext-binding-for-my-context-menu/6914964#6914964),它應該清除你可能有問題。 – 2012-02-06 22:44:38

相關問題