IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Windows Forms Discussion :

UserControl.Controls utilisable en mode design


Sujet :

Windows Forms

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Février 2003
    Messages
    837
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations forums :
    Inscription : Février 2003
    Messages : 837
    Points : 377
    Points
    377
    Par défaut UserControl.Controls utilisable en mode design
    Bonjour à tous,

    Je souhaite réaliser un petit usercontrol qui permette d'accepter l'ajout de controles à l'interieur de celui ci en mode design.
    Plus contretement :

    Mon usercontrol possede un panel.
    J'aimerai, en mode design sous visual studio, pouvoir ajouter des controles dans ce panel pour qu'ils soient embarqués à l'interieur de celui ci. En gros, que les controls que j'ajoute aient pour parent le panel.

    Savez vous comment réaliser ceci ?

    Merci d'avance
    @ bientot

  2. #2
    Expert éminent sénior Avatar de Pol63
    Homme Profil pro
    .NET / SQL SERVER
    Inscrit en
    Avril 2007
    Messages
    14 154
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : .NET / SQL SERVER

    Informations forums :
    Inscription : Avril 2007
    Messages : 14 154
    Points : 25 072
    Points
    25 072
    Par défaut
    oui mais c'est pas simple

    il faut créer une classe designer pour ton usercontrol
    une classe designer sert à faire fonctionner un controle en mode design
    en effet visual studio ne sait rien faire et ne fait rien, le fait que quand tu clic sur un control, il affiche les accroches de redimensionnement par exemple, c'est codé en .NET
    il est donc possible de coder intégralement le mode design d'un controle

    voilà pour les généralités
    dans ton cas, il faut rajouter au dessus de ton usercontrol l'attribut suivant :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <System.ComponentModel.Designer(GetType(DesignerDeMonUserControl))> _

    puis rajouter les classes adéquat (par exemple en dessous du code du usercontrol)
    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
    20
    21
    22
    23
    24
    25
    26
    27
    28
     
     Friend Class DesignerDeMonUserControl
            Inherits System.Windows.Forms.Design.ParentControlDesigner
     
            Private _MonUserControl As MonUserControl
     
     
            Public Overrides Sub Initialize(ByVal component As System.ComponentModel.IComponent)
                Try
                    If TypeOf component Is MonUserControlThen
                        _MonUserControl= DirectCast(component, MonUserControl)
                    End If
                    Me.EnableDragDrop(False)
                    ActiveDesignMode (_MonUserControl.lepanelaactiver)
                    MyBase.Initialize(component)
                Catch ex As Exception
                    MsgBox(ex.Message & vbCrLf & ex.StackTrace)
                End Try
            End Sub
     
     
            Public Sub ActiveDesignMode(ByVal ctrl As System.Windows.Forms.Control)
                If ctrl Is Nothing Then Exit Sub
                Me.EnableDesignMode(ctrl, ctrl.Name)
            End Sub
     
     
        End Class
    essaye ca, si t'as des soucis, je testerais
    Cours complets, tutos et autres FAQ ici : C# - VB.NET

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Février 2003
    Messages
    837
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations forums :
    Inscription : Février 2003
    Messages : 837
    Points : 377
    Points
    377
    Par défaut
    Salut Sperot51,

    Merci pour ce code, je ne peux malheureusement pas tester de suite, mais dès que c'est fait je te tiens au courant

Discussions similaires

  1. [C#Express 2008] Pourquoi mes CustomControls ne sont pas utilisables en mode Design ?
    Par neguib dans le forum Windows Presentation Foundation
    Réponses: 5
    Dernier message: 27/11/2008, 10h43
  2. Réponses: 1
    Dernier message: 07/07/2008, 12h26
  3. Réponses: 0
    Dernier message: 05/02/2008, 14h23
  4. ajout d'un control dynamiquement en mode design
    Par Pol63 dans le forum Windows Forms
    Réponses: 3
    Dernier message: 01/02/2008, 23h20
  5. name en mode design d'un usercontrol
    Par Pol63 dans le forum VB.NET
    Réponses: 1
    Dernier message: 28/05/2007, 10h49

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo