问题标签 [catel]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1075 浏览

mvvm - Catel MVVM 应用程序代码结构

目前我正在探索用于开发 WinRT 和 Windows Phone 应用程序的 MVVM 框架。我发现 Catel MVVM 框架很有前途,它提供了许多功能。我还浏览了 codeplex 上可用的 catel mvvm 的各种示例。然而,这些示例中的大多数都是在单个 Visual Studio 项目中构建的。通过单个项目,我的意思是有一个用于 WinRT 应用程序的 Visual Studio 项目,它包含模型、视图模型和视图,以及用于 Windows 手机应用程序的单独项目。我计划以一种可以在 WinRT 和 Windows Phone 应用程序之间共享代码的方式来构建我的代码。例如

常见的

  • 项目一:商业服务
  • 项目2:模型
  • 项目 3:查看模型

WinRT

  • 项目 4:WinRT 应用程序特定代码(视图等)

赢电话

  • 项目 5:Windows Phone 应用程序特定代码(视图等)

现在我的问题是,据我了解,Catel 使用一些约定来定位视图模型,是否可以如上所述构造应用程序代码?如果是,那怎么办?是否有任何示例代码可以帮助我?非常感谢这方面的任何帮助。提前致谢。

0 投票
2 回答
1516 浏览

c# - 将鼠标悬停在组合框中时 WPF 从组合框中删除项目(MVVM)

我有一个绑定到可观察集合的组合框。Collection 是一个自定义类的容器。

当我的鼠标光标悬停在下拉列表的项目上时,我需要通过按鼠标右键从组合框中删除一个任意项目。当项目突出显示时,我还需要通过按删除按钮来删除它。

我已经在后面的代码中有一个解决方案,但我需要使用 MVVM 模式来完成。

有人可以帮我解决这个问题吗?

提前谢谢:)。

这是我的代码:

我的视图模型:

XAML 文件:

人物类:

非 MVVM 项目中的代码隐藏解决方案:

0 投票
1 回答
83 浏览

mvvm - 用于 WinRT 的 Catel MVVM EventToCommand

我正在使用 catel mvvm 开发 Windows 商店应用程序,但找不到 WinRT 的 EventToCommand 功能。有谁知道我在哪里可以找到它?

0 投票
1 回答
556 浏览

wpf - DevExpress DXWindow 和 Catel Castom 窗口

我正在尝试使用 DevExpress DXWindow 为 Catel 实现自定义窗口,但有一个问题,DXWindow 不完全支持此接口。我想知道关于另一个可以执行更改通知吗?PS对不起我的英语不好。

0 投票
1 回答
426 浏览

c# - Catel:在异步命令中使用 IMessageService

我将 AsynchronousCommand 绑定到视图的按钮。我需要做的是在用户单击按钮时验证窗口的一些文本框。如果验证失败,则应向用户显示一个错误消息框。

我如何使用 IMessageService 做到这一点?

使用此代码:

我得到 IvalidOperationException: invalidoperationexception 调用线程无法访问此对象,因为不同的线程拥有它。

我怎样才能避免这个问题?

在此先感谢您的帮助。

0 投票
1 回答
629 浏览

wpf - Catel WPF 延迟验证

我刚刚开始将 Catel 用于 WPF 应用程序,但遇到了一些问题。

1)当按钮无法执行时,我没有看到该按钮按照文档显示为灰色。

2)我在哪里将代码保存到数据库中 - 在 ViewModel 或 Model 中。有没有任何地方的例子?

3) 是否有在主页中使用菜单并在单击菜单项时加载用户控件的示例?

4) 当我在 ViewModel 的构造函数中设置 DeferValidationUntilFirstSaveCall = true 时,当对话框窗口出现时出现异常。异常如下

如果我从代码中删除 defervalidation 行,则弹出窗口有效。

任何帮助和建议表示赞赏。

0 投票
1 回答
1343 浏览

wpf - 使用 WPF 在 Catel 中设置 DataContext

所以我开始研究 Catel MVVM 框架,它看起来可以解决我遇到的几个问题,但我有一个非常愚蠢的问题。我想我只是缺少一些小东西。

我用我的一个较小的 WPF 项目来切换 Catel 作为我学习它的一种方式。我有一个简单的“玩家注册”表格,其中包含姓名和姓氏等字段。我使用 vm 代码片段重新创建了我的原始视图模型,一切都很好,我在文档中阅读了我设置的所有属性和属性。

然后,我将用于“玩家注册”(PlayerRegistrationView) 的 UserControl 更改为 catel:UserControl。我将 PlayerRegistrationView 放在标准的 WPF 窗口上(没有别的,只是视图的 xmlns 和视图作为窗口上唯一的内容,没有属性)

但这是我的问题:

我有一个带有按钮的 MainWindow 来打开播放器注册的窗口。点击事件就是这样:

运行我的程序,然后单击按钮会导致我的 PlayerRegistrationView 上出现 NotSupportedException:无法解析视图的视图模型。使用 GetViewModelType() 方法或 IViewModelLocator

我尝试使 ViewModel 成为窗口上的静态资源并在那里设置数据上下文,但它会产生相同的错误。

我很茫然。我错过了什么?

谢谢

0 投票
2 回答
1854 浏览

c# - 关闭与 Catel 的窗口

我使用Catel作为我的 MVVM 框架来开发 WPF 应用程序。

我通过 Catel 提供的 UIVisualizerService 打开我的窗口,如下所示:

这完美地工作。问题是我无法关闭我的窗口,就像在 Catel 网站上所说的那样

当我单击取消按钮时,命令被执行,但没有任何反应。

更多信息:

我的窗口代码隐藏类:

我的取消按钮:

我的视图模型中的命令方法:

提前致谢!

0 投票
2 回答
994 浏览

autofac - 我将如何使用 Autofac 作为 Catel 中的主要容器?

有没有办法可以使用 Autofac 作为 Catel 的主要容器?我已经看到支持 Unity、Ninject、MEF、Windsor 和 Unity,但没有提到 Autofac 集成。

0 投票
3 回答
2979 浏览

c# - 在 Datagrid WPF MVVM 中取消选择一行(显示窗口后)

我创建了一个窗口,其中包含一个绑定到 ObservableCollection 的 DataGrid:

客户=ObservableCollection(客户属性:CustomerId、CustomerName)

当我在 ViewModel 中将 SelectedCustomer 设置为 null 时,将取消选择数据网格。但我需要数据网格在窗口启动后保持未选中状态。我试图在 ViewModel 的构造函数中设置 SelectedCustomer 但它不起作用。仅当我在后面的代码中执行此操作时才有效:customersDatagrid.SelectedItem=null。

是否有任何解决方案以 MVVM 方式执行此操作?

在此先感谢并致以最诚挚的问候,