给模板传递参数假设我定义了一个圆角按钮。我也许这个按钮的用户可以指定CornerRadius?我可以使用TemplateBinding吗?但是我应该在哪里绑定呢?(标记?)为了使用TemplateBinding,模板化控件(在本例中为Button)必须有一个属性。Button没有CornerRadius或等效属性,因此您的选择是:除了Kent的建议之外,您还可以创建一个额外的属性来定义按钮上的CornerRadius,并在模板中绑定到该属性以获取不存在的属性Button类型没有CornerRadius,因此无法模板化。我认为最简单的方法是创建一个继承自Button的新类,并为CornerRadius添加一个新的依赖属性。像这样:使用System.Windows;使用System.Windows.Controls;namespaceWpfApplication3{publicclassRoundedButton:Button{publicCornerRadiusCornerRadius{get{return(CornerRadius)GetValue(CornerRadiusProperty);}set{SetValue(CornerRadiusProperty,value);}}publicstaticreadonlyDependencyPropertyCornerRadiusProperty=DependencyProperty.Register("CornerRadius",typeof(CornerRadius),typeof(RoundedButton),newUIPropertyMetadata());在xaml中你可以使用这个:绑定到CornerRadius的模板现在工作正常工作。以上就是C#学习教程:给模板传递参数的全部内容分享。如果对你有用,需要进一步了解C#学习教程,希望大家多多关注。本文收集自网络,不代表立场。如涉及侵权,请点击右边联系管理员删除。如需转载请注明出处:
