我在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
,因为这适用于按钮。但在这种情况下它并没有。
答案 0 :(得分:3)
尝试附加到$foo->setTitle( 'foo title', false );
事件,以便在释放鼠标左键后模拟点击事件。
MouseLeftButtonUp