WPF MVVM 子页面控制主窗体新增tab页面
标签:ali bsp param xaml selected data man pre inter
原文:WPF MVVM 子页面控制主窗体新增tab页面
一、方案
利用viewmodel之间消息传递方式
二、子页面
1、view.xaml
-
-
Style="{StaticResource ButtonSuccess}" CommandParameter="{Binding Param}" Cursor="Hand"/>
2、viewmodel
-
-
public RelayCommandstring> JtCommand =>
-
-
new RelayCommandstring>(Jt)).Value;
-
-
private void Jt(string param)
-
-
-
//消息传递给PindexModel接收,打开新的页面,第二个参数为消息key,控制接收对象
-
Messenger.Default.Send(SendInfo, "AddTab");
-
-
三、主窗体页面
1、viewmodel
-
-
-
MenuList = GetMenuList();
-
-
DataList = GetTabControlDataList();
-
-
//接收其他页面传递的消息,第二个参数为消息key,控制接收对象
-
Messenger.Default.Register(this, "AddTab", ReceiveInfo);
-
-
-
timer = new DispatcherTimer();
-
timer.Interval = TimeSpan.FromSeconds(1);
-
timer.Tick += new EventHandler(TimerTick);
-
-
-
-
-
-
-
private void ReceiveInfo(string msg)
-
-
-
2、xaml.cs
-
-
-
-
//卸载当前(this)对象注册的所有MVVMLight消息
-
this.Unloaded += (sender, e) => Messenger.Default.Unregister(this);
-
WPF MVVM 子页面控制主窗体新增tab页面
标签:ali bsp param xaml selected data man pre inter
原文地址:https://www.cnblogs.com/lonelyxmas/p/12164905.html
评论