【发布时间】:2019-10-14 10:23:47
【问题描述】:
我在尝试使用 MVVM 使用 XamTabControl 关闭标签时有点卡住了。当我单击选项卡上的 X 时,我希望它使用我的 DelegateCommand 在我的视图模型上运行一个方法,该方法从我的 ObservableCollection 中删除选项卡。我目前正在使用 EventTrigger 来尝试使用 TabItemEx.Closed 事件,但是当我关闭选项卡时发生的所有事情是它已从视图中删除,而不是从我的视图模型上的选项卡集合中删除。我的命令的绑定根本不起作用,它也不会调用与之关联的方法。如何绑定到视图模型上的命令,以便在关闭选项卡时在视图模型上运行方法?
<igWindows:XamTabControl Name="AttachmentsTabControl" ItemsSource="{Binding SelectedAttachments}" SelectedItem="{Binding SelectedAttachment}" Width="400" Height="400" TabLayoutStyle="MultiRowSizeToFit" AllowTabClosing="True" TabItemCloseButtonVisibility="Visible">
<igWindows:XamTabControl.ItemTemplate>
<DataTemplate>
<TextBlock Text="{Binding Name}"/>
</DataTemplate>
</igWindows:XamTabControl.ItemTemplate>
<igWindows:XamTabControl.ContentTemplate>
<DataTemplate>
<Image Source="{Binding AttachmentImage}" Width="300" Height="300"/>
</DataTemplate>
</igWindows:XamTabControl.ContentTemplate>
<behaviors:Interaction.Triggers>
<behaviors:EventTrigger EventName="TabItemEx.Closed">
<behaviors:InvokeCommandAction Command="{Binding TabItemClosedCommand}" CommandParameter="{Binding ElementName=AttachmentsTabControl, Path=SelectedItem}"/>
</behaviors:EventTrigger>
</behaviors:Interaction.Triggers>
</igWindows:XamTabControl>
【问题讨论】:
标签: c# wpf xaml prism infragistics