Bonjour à tous.

J’ai un petit souci à soumettre, si quelqu’un à une suggestion je suis preneur.

J’ai un UserControl qui crée des champs de taxonomie SharePoint. Dans certains cas ces champs sont obligatoires. Je dois y ajouter un CustomFieldValidator (le RequiredFieldValidator ne fonctionne pas sur ce contrôle).

Mon Code d’ajout est le suivant (je l’appelle dans la fonction CreateChildControls, au cas ou le problème viendrait de là) :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
 
    TaxonomyWebTaggingControl taxonomyField = new TaxonomyWebTaggingControl() { ID="taxonomyField"+term};
    taxonomyField.PrepareField(termStore, term, !SingleValuedFields.Contains(term));
 
    tc.Controls.Add(taxonomyField);
 
    // tc est un TableCell dans ma page.
    tc.Controls.Add(taxonomyField);
 
    if (RequiredFields.Contains(term))
    {
        // le problème est à cette ligne : ParseControl me retourne un “Control” avec ID vide, et qui n’est pas de type CustomValidator
        var uncastedValidator = tc.Page.ParseControl("<asp:CustomValidator ID=\"Validator" + term + "\" runat=\"server\" ControlToValidate=\"taxonomyField" + taxonomyField.ID + "\" Display=\"Dynamic\" ValidationGroup=\"" + ValidationGroup + "\" />");
        tc.Controls.Add(uncastedValidator);
        CustomValidator validator = (CustomValidator)tc.FindControl("Validator" + term);
 
        _allValidators.Add(validator, taxonomyField);
        validator.ServerValidate += new ServerValidateEventHandler(validator_ServerValidate);
    }
QUelqu'un saurait comment créer ce validator ?