我想换一个
<Button Text="Foo" Command="{Binding Foo}"> <Button.CommandParameter> <System:Boolean>True</System:Boolean> </Button.CommandParameter> </Button>
有点像
<Button ... CommandParameter="{???}"/>
可以通过从MarkupExtension类派生并实现ProvideValue方法来编写标记扩展:
public class BooleanValueExtension : MarkupExtension { private readonly bool _value; public BooleanValueExtension(bool value) { _value = value; } public override object ProvideValue(IServiceProvider serviceProvider) { return _value; } }
然后可以使用大括号语法:
<Button CommandParameter="{local:BooleanValue True}" />