В моем коде у меня есть следующие пользовательские элементы управления
- MyListUserControl
- MyListItemUserControl
MyListUserControl загружает список с элементами, загруженными из MyListItemUserControl,
на MyListItemUserControl У меня есть кнопка, при нажатии которой я показываю ContextMenu с несколькими опциями.
Теперь при нажатии этого MenuItem я должен вызвать метод из MyListUserControl, возможно ли это сделать?
Короче говоря, это структура, которая у меня есть
MyListUserControl -> MyListItemUserControl -> ContextMenu Item Click -> Command from MyListUserControl
Если я пишу код ListItem в том же ListUserControl, он работает нормально.Но я бы предпочел код элемента и списка в отдельных классах.
MyListUserControl xaml Code
<ListView ItemsSource="{Binding Data}">
<ListView.ItemTemplate>
<DataTemplate>
<local1:MyListItemUserControl HorizontalContentAlignment="Stretch" VerticalContentAlignment="Stretch"
CommentData="{Binding}"/>
</DataTemplate>
</ListView.ItemTemplate>
</ListView>
В этом классе определен DelegateCommand, который я хотел бывызов из MyListItemUserControl
MyListItemUserControl xaml
<ContextMenu>
<MenuItem Command="{Binding Source={StaticResource Proxy}, Path=Data.MenuItem_Clicked}"
Header="{x:Static propertyRes:Resources.Txt_Copy}"
Style="{StaticResource menuItems}" />
<MenuItem Header="{x:Static propertyRes:Resources.Txt_Edit}" Style="{StaticResource menuItems}" />
<MenuItem Header="{x:Static propertyRes:Resources.Txt_Delete}" Style="{StaticResource menuItems}" />
</ContextMenu>