2009-05-24 5 views
1

Problème:Comment exposer la propriété visible d'une image dans un contrôle utilisateur (C#)?

Un contrôle qui montre à chaque utilisateur quels tests ils ont réussi sur un possible quatre.

Ma solution:

Créer un contrôle utilisateur qui indique le nom des jeux-questionnaires et a une coche à la fin de chaque nom de jeu-questionnaire que je voudrais rendre visible quand ils passent un quiz.

Le contrôle utilisateur réel est à l'intérieur de ma page maître. À la lecture d'autres messages, je comprends que j'ai besoin de rendre publique la propriété image.visible dans le code de contrôle. J'ai essayé ceci de plusieurs manières et n'ai pas eu beaucoup de chance.

Alors, comment exposer la propriété .visible d'une image dans mon contrôle utilisateur?

Merci pour tout conseil.

Répondre

6

Essayez quelque chose comme ceci:

public Boolean ImageIsVisible 
{ 
    set { this.yourImage.Visible = value; } 
    get { return this.yourImage.Visible; } 
} 
+0

Merci pour votre aide! – Strategon

1

ROIS façons je peux penser ...

Dans le contrôle utilisateur, juste définir l'image comme au lieu de défaut du public - privé, mais qui expose TOUS les éléments.

Une autre est de créer une propriété au niveau de contrôle de l'utilisateur qui passe à l'ex:

public Boolean ImgVisible 
{ 
    get { return this.YourImageControl.Visible; } 
    set { this.YourImageControl.Visible = value; } 
} 

Ou, il suffit de créer en fonction de votre contrôle utilisateur ...

public void ImgVisible(Boolean ShowIt) 
{ 
    this.YourImageControl.Visible = ShowIt; 
} 

Désolé, partie manquée à propos de la page maître ... En tant que contrôle web, tant que le contrôle est visible depuis l'EDI (concepteur visuel) de votre formulaire, vous pouvez vous y référer directement dans la définition de classe partielle nom de référence ...

public Boolean ImgVisible 
{ 
    get { return ImgControl.Visible; } 
    set { ImgControl.Visible = value; } 
} 
+0

Merci pour votre aide! – Strategon

0

J'ai un problème pour accéder à ceci sur la page de contenu. Est-ce correct?

  1. Je suis allé à CodeBehind sur le contrôle et a ajouté la propriété suivante:

    public Boolean ImgVisible { get { return this.imgModule1Passed.Visible; } set { this. imgModule1Passed.Visible = value; } }

  2. sur le code de la page de contenu derrière, je me sers de ce qui suit:

UserControl control = (usercontrol)this.Page.Master.FindControl("QuizzesPassed1");

Ne devrais-je pas être en mesure de trouver la propriété par:

Control.ImgVisible

?

Je n'arrive pas à trouver le contrôle du tout.

+0

vous devez convertir le contrôle dans votre sous-type spécifique, puisque seulement il contient la propriété ImgVisible. –

Questions connexes