将图像绑定到背景

时间:2012-01-06 14:10:42

标签: wpf mvvm prism mef

在我的WPF项目中,我使用的是Prism + MEF + MVVM。

在主窗口(我的意思是Shell.xaml)中必须有一个背景(图像 .wmv文件)。但这必须能够随时更改(视图更改将发生更改)。 有些视图有图片,有些有电影。我可以使用图像作为模块中视图的背景。但电影文件不合适。 在改变时,它们都从一开始就开始。如果电影与上一个视图背景电影相同,我希望它继续。

在互联网上,我找不到任何关于此的来源/问题。

有没有人可以帮助我?

1 个答案:

答案 0 :(得分:0)

我会将Background存储在ParentViewModel中,并确保仅在值发生更改时触发PropertyChanged事件。

public object WindowBackground
{
    get {return _windowBackground; }
    set
    {
        if (_windowBackground != value)
        {
            _windowBackground = value;
            RaisePropertyChanged("WindowBackground");
        }
    }
}

然后,您可以使用Prism的EventAggregator之类的东西来激活父ViewModel可以订阅的BackgroundChangeEvent,这样所有ViewModel都可以更新背景。