从Usercontrol xaml.cs调用方法到View Model

时间:2014-02-28 07:05:37

标签: c# wpf xaml mvvm telerik

我正在我的项目中使用MVVM,我正在实现图表设计器,我正在使用Telerik的RAD Diagram控件。我正在将我的RadToolBox中的形状拖动到我已经实现了事件的画布。现在这个事件我想要在Canvas(标尺)上删除形状后将图保存在RavenDB中。这一切都在存储在一个库中的用户控件中,我在我的实际WPF表单中创建了这个库的引用,这是在其他库中我的要求是我想从我的用户控件的xaml.cs调用WPF窗体的View Model中出现的Save命令,这个用户控件存在于其他库中。

我如何实现同样的目标。请帮忙。

2 个答案:

答案 0 :(得分:0)

为什么有多个组件?如果您没有 需要 ,那么请简化您的工作,只需使用NameSpaces将控件与同一程序集中的表单分开。

现在说: - )

简单的方法是通过活动。将事件添加到UserControl,然后在事件发生时Window添加代码。

阅读MSDN Events

答案 1 :(得分:0)

我真的不知道为什么你需要从另一个WindowsForm调用一个保存命令。 Telerik UI Diagram提供了未定义的save命令,用于保存图, InXAML,

<Grid.CommandBindings>
                <CommandBinding Command="telerik:DiagramCommands.Save" Executed="ExecuteSave" />
</Grid.CommandBindings>

在代码后面定义保存功能,

private void ExecuteSave(object sender, ExecutedRoutedEventArgs e)
        {
            e.Handled = true;
            this.diagram.save();
        }