Caliburn Micro运行代码点击标签

时间:2017-01-10 01:00:55

标签: c# wpf xaml caliburn.micro

我在WPF旁边使用Caliburn.Micro。我希望在单击标签时运行任何代码。我尝试了一些谷歌搜索,发现了cal:Message.Attach

XAML:

<Label x:Name="Info" Content="Info" HorizontalAlignment="Left" Margin="305,440,0,0"
VerticalAlignment="Top" FontFamily="Tahoma" FontSize="10" FontWeight="Bold" cal:Message.Attach="[Action ShowAboutWindow()]"/>

C#:

public void ShowAboutWindow()
{
    MessageBox.Show("xyz"); // just to test whether ShowAboutWindow is executed whatsoever (see explanation below) 
    WindowManager.ShowWindow(new AboutViewModel(EventAggregator, WindowManager, SettingsManager));
}

但是,ShowAboutWindow不会运行。我添加了MessageBox以确保WindowManager不会将其搞砸。

我如何实现我的愿望?

编辑1:我之前尝试过将public void Info()方法添加到ViewModel,因为这适用于按钮。但在这种情况下它并没有。

1 个答案:

答案 0 :(得分:3)

尝试附加到$foo->setTitle( 'foo title', false ); 事件,以便在释放鼠标左键后模拟点击事件。

MouseLeftButtonUp