1

我尝试提高 Controls:MetroTabControl 的 TabItemClosingEvent。

XAML:

<Controls:MetroTabControl cal:Message.Attach="[Event TabItemClosingEvent] = [Action CloseConnection($source, $eventArgs)];" DockPanel.Dock="Top" Background="{x:Null}" ItemsSource="{Binding Connections.View}" SelectedItem="{Binding SelectedConnection}"  Margin="10,0">

代码:

public void CloseConnection(object sender, BaseMetroTabControl.TabItemClosingEventArgs e)
{
e.Cancel = false;
}

CloseConnection 永远不会被调用。有人能看出我的错吗?

谢谢

4

1 回答 1

1

我也无法让 MahApps 使用 Caliburn 的简短语法。

但是,长语法对我有用:

<Controls:MetroTabControl DockPanel.Dock="Top" 
                            Background="{x:Null}"
                            ItemsSource="{Binding Connections.View}" 
                            SelectedItem="{Binding SelectedConnection}"  Margin="10,0" >
    <i:Interaction.Triggers>
        <i:EventTrigger EventName="TabItemClosingEvent">
            <cal:ActionMessage MethodName="CloseConnection">
                <cal:Parameter Value="$source" />
                <cal:Parameter Value="$eventArgs" />
            </cal:ActionMessage>
        </i:EventTrigger>
    </i:Interaction.Triggers>
</Controls:MetroTabControl>
于 2013-12-26T18:18:16.090 回答