Bonjour à tous et bonne année

Je suis en train de customiser un TListBox et si le rendu final est bien celui que je veux par contre pour l'accès aux éléments ce n'est pas ça.

Donc voici ce que j'ai fait:

Le code ci dessous est appelé quand je met à jour ma TListbox

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
 
lbUniteActives.Clear;
          for i := 0 to TEtatMajor(lePion).getNbSubordonne - 1 do
          begin
            sub := TTroupe(TEtatMajor(lePion).getSubordonne(i));
            ilst := TListBoxItem.Create(lbUniteActives);
            ilst.stylelookup := 'CheckListBoxItemStyle';
            ilst.stylesdata['texte'] := sub.getNom;
            ilst.stylesdata['chkActiveBox'] := sub.Active;
            if ilst.FindStyleResource<TCheckBox>('chkActiveBox', chkactive) then
              chkactive.OnChange := lbUniteActivesChangeCheck;
            lbUniteActives.AddObject(ilst);
          end;
Et j'ai bien le résultat que j'attends
Nom : lbstyle1.PNG
Affichages : 220
Taille : 55,3 Ko
Voici le style que j'ai défini:
Nom : lbstyle2.PNG
Affichages : 215
Taille : 2,6 Ko

Le problème semble se situer à cette ligne car le résultat du FindStyleResource renvoi false
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
 
if ilst.FindStyleResource<TCheckBox>('chkActiveBox', chkactive) then
              chkactive.OnChange := lbUniteActivesChangeCheck;
Il ne trouve pas l'élément chkActiveBox et je ne comprends pas pourquoi.

Une idée?