C# 使用Caliburn Micro[WPF]将参数传递给XAML中的方法
我想在我的所有按钮中传递一个参数,以指定单击哪个按钮 现在我只能说:C# 使用Caliburn Micro[WPF]将参数传递给XAML中的方法,c#,wpf,caliburn.micro,C#,Wpf,Caliburn.micro,我想在我的所有按钮中传递一个参数,以指定单击哪个按钮 现在我只能说: <Button HorizontalAlignment="Left" Height="21" Margin="24,15,0,0" VerticalAlignment="Top" Width="66" Background="#FFE5E5E5" Grid.Column="2" Grid.Row="1" content="Details...
"> <i
<Button HorizontalAlignment="Left" Height="21" Margin="24,15,0,0" VerticalAlignment="Top" Width="66" Background="#FFE5E5E5" Grid.Column="2" Grid.Row="1" content="Details...
">
<i:Interaction.Triggers>
<i:EventTrigger EventName="Click">
<cal:ActionMessage MethodName="ShowColumnDetailsView" />
</i:EventTrigger>
</i:Interaction.Triggers>
</Button>
根据文档,您可以执行以下操作:
<Button Content="Click Me" x:Name="MyButton">
<i:Interaction.Triggers>
<i:EventTrigger EventName="Click">
<cal:ActionMessage MethodName="SayHello">
<cal:Parameter Value="{Binding ElementName=MyButton}" />
</cal:ActionMessage>
</i:EventTrigger>
</i:Interaction.Triggers>
</Button>
还是我在这个过程中遗漏了什么?@Aybe感谢您的回复。然而,这个链接只在我有一个按钮时提供了一个解决方案。啊,所以你传递了实际的按钮名称。那么这个方法应该接受什么呢?(我试图传递一个整数值或者一个stringname,但这也很好)我相信它应该是
void SayHello(按钮)
,如果你得到null
,那么暂时尝试object
,以便在调试时发现真正传入的内容。非常感谢,经过一些调试,它工作得很好。这确实是一个按钮。