Angular2 Composant Personnalisé marque de vierge et intacte

J'ai un modèle de moteur, de forme Angulaire 2.1 contenant de nombreux contrôles standard (<input>, <select> etc) et un contrôle personnalisé qui lui-même contient plusieurs éléments d'entrée.

J'ai mis en place ControlValueAccessor sur le contrôle personnalisé et c'est la propagation, il est modifié/touché/valeurs valides correctement le formulaire parent.

Cependant .. sur le formulaire parent j'ai un bouton "Enregistrer", sur lequel après l'enregistrement, je veux effacer la sale/touché de l'état (ce qui affecte la css appliquée) comme ceci:

save(myForm: NgForm) {

    myForm.form.markAsPristine();
    myForm.form.markAsUntouched();

}

Ce travail est ok pour tous les éléments dans le haut niveau du formulaire parent et le contrôle personnalisé lui-même mais la <input> champs dans le contrôle personnalisé sont toujours marqués comme touché/sale (et ce, à la réception de la pré-enregistrées style).

Est-il possible que le contrôle personnalisé peut être notifié quand il est sale/touché de l'état est modifié de sorte qu'il peut alors clair c'est l'enfant <input> éléments de match? Il semble que si la <input> éléments sont à l'intérieur d'un contrôle personnalisé à ne pas obtenir de mises à jour par des appels à markAsPristine/Intact sur le Formulaire parent.

Merci!

OriginalL'auteur Garth Mason | 2016-12-22