[问题] WPF ViewModel constructor开启其他专案

楼主: z79263578 (Reinace)   2018-05-17 16:07:03
想请问一下目前实做Mvvm遇到一个问题
就是我想要在ViewModel的建购子就直接开启另一个视窗专案
我的Window.DataContext绑定着ViewModel
我的ViewModel的建购子大概长这样
ViewModel()
{
NewProject Form = new NewProject();
Form.ShowDialog();
}
但是他直接就开2次新视窗专案了..
问题有几个
1.ViewModel可以设定建购子吗?
2.想请问一下程式开起来的顺序是 MainWindow -> ViewModel吗?
3.假如ViewModel的建购子有带参数 像ViewModel(int a)这样的话要怎么绑定呢?
作者: smmoon (邦)   2018-05-18 14:39:00
你的三个问题都跟观念有关系 建议你先去看sample
楼主: z79263578 (Reinace)   2018-05-18 16:42:00
因为公司突然要用WPF,而且都没人会所以现在都是自学,常常碰很多壁,也找不到人问..想请问那假如想在ViewModel直接开另一个专案的Form有什么比较好的方法吗?
作者: lightyen (lightyen)   2018-05-19 00:45:00
你在画蛇添足??
楼主: z79263578 (Reinace)   2018-05-19 07:39:00
抱歉我就是不懂所以才来问到底要怎么做...
作者: testPtt (测试)   2018-05-19 08:41:00
2个Project一起跑?一次从NewProject开 一次从ViewModel开
楼主: z79263578 (Reinace)   2018-05-19 11:42:00
应该说,我想在我的Project刚开始就去开另一个Project开另一个Project会加载资料,我需要传回本来ViewModel
作者: testPtt (测试)   2018-05-19 12:27:00
你把Form.ShowDialog();拿掉试试
作者: Litfal (Litfal)   2018-05-19 13:27:00
如果那个Form是外部来的,那开个Service装比较好你一定是new了两次viewmodel阿
楼主: z79263578 (Reinace)   2018-05-19 16:23:00
我是把VM放在window.DataContext里面神秘的是,我没有开始程式,只是把程式切到XAML那边他也自己跳出来..我根本没按F5开始程式
作者: lightyen (lightyen)   2018-05-20 15:04:00
在XAML的设计模式时 UI的建构子会被执行
楼主: z79263578 (Reinace)   2018-05-20 16:11:00
原来是这样...所以我是不是该在MainWindow开启其他专案然后再把其他专案拿到的资料传到ViewModel里面呢?

Links booklink

Contact Us: admin [ a t ] ucptt.com