Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/gwt/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# MVVM、Catel和图形用户界面交互_C#_Wpf_Mvvm_Catel - Fatal编程技术网

C# MVVM、Catel和图形用户界面交互

C# MVVM、Catel和图形用户界面交互,c#,wpf,mvvm,catel,C#,Wpf,Mvvm,Catel,我正在开发一个图形应用程序,用户在其中单击框架元素并在画布上拖动它们。它在代码隐藏中工作,但希望使用Catel/MVVM对其进行更新 我的一般问题是:在这个应用程序中,ViewModel必须“知道”视图,因为它必须知道相对于“LayourRoot”的鼠标位置,以更新对象位置,这与MVVM模式相反。最好是在代码隐藏中处理所有鼠标/框架元素交互以及任何具有MVVM属性的数据/框架元素。(所谓数据/框架元素,我指的是在数据存储中存储某些属性值,如Canvas.Top、Canvas.Left、Fill等

我正在开发一个图形应用程序,用户在其中单击框架元素并在画布上拖动它们。它在代码隐藏中工作,但希望使用Catel/MVVM对其进行更新

我的一般问题是:在这个应用程序中,ViewModel必须“知道”视图,因为它必须知道相对于“LayourRoot”的鼠标位置,以更新对象位置,这与MVVM模式相反。最好是在代码隐藏中处理所有鼠标/框架元素交互以及任何具有MVVM属性的数据/框架元素。(所谓数据/框架元素,我指的是在数据存储中存储某些属性值,如Canvas.Top、Canvas.Left、Fill等。)


关于一般方法的任何建议?

拖放是UI关注的问题,因此应该驻留在UI中

MVVM并不意味着“没有代码隐藏”。这意味着将业务逻辑与UI关注点分离


视图应处理拖放操作,而被拖放的视图应更新对象模型中的位置信息。

拖放是UI关注点,因此应位于UI中

MVVM并不意味着“没有代码隐藏”。这意味着将业务逻辑与UI关注点分离


视图应处理拖放操作,而被拖放的视图应更新对象模型中的位置信息。

拖放是UI关注点,因此应位于UI中

MVVM并不意味着“没有代码隐藏”。这意味着将业务逻辑与UI关注点分离


视图应处理拖放操作,而被拖放的视图应更新对象模型中的位置信息。

拖放是UI关注点,因此应位于UI中

MVVM并不意味着“没有代码隐藏”。这意味着将业务逻辑与UI关注点分离


视图应该处理拖放操作,其中一个被拖放的视图应该更新对象模型中的位置信息。

请参见带有可拖动项的基于MVVM的类画布UI。示例中的内容很好,HighCoreSee带有可拖动项的基于MVVM的类画布UI。示例中的内容很好,HighCoreSee是一个基于MVVM的类画布用户界面,具有可拖动项。示例中的好东西,HighCoreSee是一个基于MVVM的类画布用户界面,具有可拖动项。示例中的好东西,HighCore