के भीतर पैरेंट डेटा कॉन्टेक्स्ट से जुड़ें मैं UserControl.DataContext
में निहित कमांड के लिए मेनूइटम के कमांड को बांधने की कोशिश कर रहा हूं। समान प्रश्न का मैंने पाया जोड़ी है, लेकिन समाधान उनके अनुसार मेरे लिए विफल हो रहा है:डेटा टेम्पलेट
<UserControl ...>
<UserControl.Resources>
<DataTemplate x:Key="TileItemStye">
<Grid Width="100" Height="100">
<Grid.ContextMenu>
<ContextMenu>
<MenuItem Header="Remove"
Command="{Binding DataContext.RemoveItem,
RelativeSource={RelativeSource FindAncestor,
AncestorType=UserControl}}">
</MenuItem>
</ContextMenu>
</Grid.ContextMenu>
</Grid>
</DataTemplate>
</UserControl.Resources>
<Grid>
<ListView ItemsSource="{Binding Path=Files}"
ItemTemplate="{DynamicResource TileItemStye}" >
<ListView.ItemsPanel>
<ItemsPanelTemplate>
<WrapPanel />
</ItemsPanelTemplate>
</ListView.ItemsPanel>
</ListView>
</Grid>
UserControl के DataContext ICommand
RemoveItem और ObservableCollection<FileViewModel>
फ़ाइलें साथ ViewModel है।
आपको "विफल" क्या है? - कृपया जो त्रुटि आपको मिलती है उसे समझाएं .... – Carsten
कमांड बाध्य नहीं है ... मुझे कोई त्रुटि नहीं मिलती है, केवल कमांडर जो आदेश के लिए बाध्य है उसे कभी भी – bkovacic
नहीं कहा जाता है, मुझे लगता है कि डेटाकॉन्टेक्स्ट को बस "बारिश" करनी चाहिए टेम्पलेट, क्या आपने कमांड = "{बाइंडिंग पथ = RemoveItem}" कोशिश की? – hyp