如何使用功能区按钮执行代码?

How to use Ribbon Buttons to execute code?

到目前为止,我已经按照 this tutorial.

创建了一个带有多个按钮的功能区

现在我想让按钮真正起作用!我发现 this example 显示了如何执行已经存在的方法。但是,如果我这样做:Command="myCustomClass.myCustomMethod" 并使用

Class myCustomClass
    Public Sub myCustomMethod()
        'do stuff
    End Sub
End Class

我收到错误 myCustomClass is not supported in a Windows Presentation Foundation (WPF) project

我也从同一个 post 注意到这个 this post。将代码转换为VB.NET后:

Public Class MyCommand
    Implements ICommand
    Public Sub Execute(parameter As Object) Implements ICommand.Execute
        Dim hello As String = TryCast(parameter, String)
        MsgBox(hello)
    End Sub

    Public Function CanExecute(parameter As Object) As Boolean Implements ICommand.CanExecute
        Return True
    End Function

    Public Event CanExecuteChanged As EventHandler Implements ICommand.CanExecuteChanged
End Class

并添加对 <Window x:Class="MainWindow" ... 元素的引用:

<Window.Resources>
    <local:MyCommand x:Key="mycmd"/>
</Window.Resources>

我收到以下错误:The name 'MyCommand' does not exist in the namespace "clr-namespace:RibbonSample"

我完全不知道我需要做什么来实现这些按钮。是否有可能使用相同的框架获得任何完整的色带样本,我可以从中学习?我认为这个问题的解决方案应该非常简单。

重建您的项目。

WPF 设计器从您项目的已编译程序集中加载 classes(以便它可以实际执行您的代码)。

如果您添加一个新的 class,它将给您错误,直到您重建您的项目,因此程序集包含 class。