是否可以将 XAML 中样式的 TargetType 属性设置为通用类?
public class Selector<T> : Control { }
然后在xaml中
<Style x:TargetType="Selector">
<Setter Property="MyProperty" Value="Green" />
</Style>
这行不通,因为 Selector 缺少类型参数。
最佳答案
您不能绑定(bind)到像 List<T>
这样的开放泛型类型,但是可以通过定义占位符类型绑定(bind)到像 List<Person>
这样的封闭泛型类型。
C# :
class People : List<Person> {}
XAML :
<Style TargetType="{x:Type People}"> ... </Style>
更新 :您需要为样式指定
TargetType
或 x:Key
属性,而不是同时指定两者。关于c# - 将样式的 TargetType 属性设置为泛型类,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/999460/