Créer un CustomValidator par code.
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:
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 nest 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 ?