我有这个 XAML:
<UserControl x:Class="Foo.UserControls.Bar"
x:Name="FooBar"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
<StackPanel>
<WrapPanel Margin="4,0,0,0">
<Button Command="{Binding Path=CreateCommand, ElementName=FooBar}">
<TextBlock>Create</TextBlock>
</Button>
使用此代码隐藏(已删除using
s):
namespace Foo.UserControls
{
public partial class Bar : UserControl
{
public DelegateCommand CreateCommand { get; private set; }
public Bar()
{
InitializeComponent();
CreateCommand = new DelegateCommand(Create);
}
private void Create(object action)
{
Console.WriteLine("foo");
}
}
}
无论是调试器还是控制台日志,它似乎都不会触发。奇怪的是绑定似乎很好,因为它不会将任何错误记录到输出中。如果我故意破坏绑定,我确实会收到绑定错误,但是使用上面的绑定我没有收到任何错误,但它永远不会触发。