无法将类作为参数传递给命令

3

我是一个编程新手,我在XAML中创建了一个类,在<Window.Resources>中使用。但我现在遇到了困难,无法将这个类作为参数传递给命令。

  <Window.Resources>
      <local:RegisterWindowViewModel x:Key="RegViewModel"/>
      <local:RegisterValidationConverter x:Key="RegValid"/>
      <local:UsersViewModel x:Key="UVM"/>
  </Window.Resources>

这是一个带有命令绑定的按钮。
    <Button Name="signupButton" DataContext="{StaticResource UVM}"
            Height="50" Width="150" BorderBrush="Black" BorderThickness="2" 
            FontSize="20" FontWeight="SemiBold"
            Style="{StaticResource AccentedSquareButtonStyle}"
            Command="{Binding GetRegisterItemCommand}"
            CommandParameter="{Binding RegViewModel}">
        Sign Up
    </Button>

我认为这段代码CommandParameter="{Binding RegViewModel}"有误,但我不知道该如何替换它...
因此,在执行命令函数时我得到了null,而函数本身是正确的;我已经进行了大量测试,并尝试传递另一个对象(例如TextBox),结果都很好。
我只是不理解语法。
在资源中创建的类是否可作为参数传递?
如果您能提供帮助,我将非常感激。
1个回答

3
您正在尝试的方式表明它可以在当前DataContext中找到RegViewModel。要指向您自己的viewmodel,您可以说绑定的源是您的RegViewmodel,并进行以下更改。在这种情况下,完整的RegViewModel将传递给CommandParameter。
CommandParameter="{Binding Source={StaticResource RegViewModel}}"

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接