2010-06-04 9 views

Répondre

2

WPF peut se lier à n'importe quel objet CLR (ou objet COM exposé via le CLR), y compris les instances de classes génériques. L'objet peut éventuellement implémenter INotifyPropertyChanged ou la sous-classe DependencyObject afin que les modifications apportées à ses propriétés soient détectées par la liaison. Si ce n'est pas le cas, la valeur de la propriété est copiée une fois lorsque la liaison est évaluée, mais pas mise à jour.

Techniquement WPF ne "lie pas à une classe": Il se lie à un objet qui est une instance de cette classe. Donc pris littéralement la réponse à votre question serait "non", mais je suppose que vous demandiez si elle pouvait se lier à une instance d'une classe générique, auquel cas la réponse est "oui". WPF a une limitation quant aux classes génériques: L'analyseur XAML ne peut pas créer d'instances de classes génériques ou les référencer dans une extension de balisage {x:Type }, donc pour la plupart des utilisations avec XAML vous devez créer une sous-classe concrète de votre classe générique et référence cela dans votre XAML. L'exception à ceci est que l'élément le plus externe dans un code XAML peut utiliser l'attribut x:TypeArguments pour spécifier une classe générique.

1

sûrement, pourquoi pas? Class<T> est juste un type. Devrait lier juste bien.

1

WPF peut se lier aux objets CLR. Les propriétés exposées doivent prendre en charge la notification (ala, INotifyPropertyChanged) ou doivent être d'un type qui en prend soin (ala, ObservableCollection).

Avec ceux en place, l'objet devrait bien servir pour fournir des données.

Questions connexes