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

VB.NET Discussion :

Limiter le nombre d'items selectionnés dans une checkedlistbox en vb.net


Sujet :

VB.NET

  1. #1
    Membre habitué Avatar de sihammaster
    Webmaster
    Inscrit en
    Mai 2009
    Messages
    256
    Détails du profil
    Informations professionnelles :
    Activité : Webmaster
    Secteur : Finance

    Informations forums :
    Inscription : Mai 2009
    Messages : 256
    Points : 183
    Points
    183
    Par défaut Limiter le nombre d'items selectionnés dans une checkedlistbox en vb.net
    Bonjour,
    J'aimerai savoir comment limiter le nombre des items cochés dans CHECKEDLISTBOX ;
    Je voudrais quand je coche un items, l'item précédent (coché) sera décoché, pour avoir la possiblité de cocher un et un seul element.
    Merci d'avance

  2. #2
    Membre éclairé Avatar de methylene
    Profil pro
    Inscrit en
    Février 2010
    Messages
    659
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Février 2010
    Messages : 659
    Points : 813
    Points
    813
    Par défaut
    En rajoutant cette classe dans ton projet :

    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
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    Imports System
    Imports System.Windows
    Imports System.Windows.Forms
     
    '-----------------------------------------------------------------
    ' Classe : myCheckedListBox
    '          derrivée de CheckedListBox
    '
    ' Cette classe permet de limiter le nombre d'items selectionnés
    ' dans la liste.
    '
    ' Evenement Depassement : Boolean
    '       
    ' Philippe Casasnovas
    ' Décembre 2003
    '-----------------------------------------------------------------
     
    Public Class myCheckedListBox
        Inherits CheckedListBox
     
        Private _MaxSelectedItem As Integer                     ' Nombre maximum d'items selectionnables
        Public Event Depassement(ByVal Resultat As Boolean)     ' Evènement pour voir si l'utilisateur a depassé la selection maximum
     
        ' Nombre maximum d'items selectionnables 
        Public Property MaxSelectedItem() As Integer
            Get
                Return _MaxSelectedItem
            End Get
            Set(ByVal Value As Integer)
                _MaxSelectedItem = Value
            End Set
        End Property
     
        ' Constructeur
        Public Sub New()
            MyBase.New()
            MaxSelectedItem = 5         ' Nombre d'items selectionnables par défaut
        End Sub
     
        ' Verrifie le nombre d'items selectionnés
        ' Si le nombre est superieur, met la selection de la ligne à false.
        ' Déclenche ensuite l'évènement Depassement
        Private Sub Verrification()
            Dim Item As Integer
            Dim Count As Integer
            For Each Item In Me.Items
                If Me.GetItemCheckState(Item) = CheckState.Checked Then
                    Count = Count + 1
                End If
            Next
            If Count > _MaxSelectedItem Then
                Me.SetItemChecked(SelectedIndex, False)
                RaiseEvent Depassement(True)
            Else
                RaiseEvent Depassement(False)
            End If
        End Sub
     
        ' On test au changement d'index selectionné
        Private Sub myCheckListBox_SelectedIndexChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.SelectedIndexChanged
            Verrification()
        End Sub
     
        ' On test au mousedown de la souris
        Protected Overrides Sub OnMouseDown(ByVal e As System.Windows.Forms.MouseEventArgs)
            Verrification()
        End Sub
     
        ' On test au keypress en cas de selection par la barre d'espace
        Protected Overrides Sub OnKeyPress(ByVal e As System.Windows.Forms.KeyPressEventArgs)
            MyBase.OnKeyPress(e)
            Verrification()
        End Sub
     
        Protected Overrides Sub RefreshItem(ByVal index As Integer)
        End Sub
     
        Protected Overrides Sub SetItemsCore(ByVal items As System.Collections.IList)
        End Sub
     
    End Class
    Geeker c'est comme manger, on ne peut pas s'en passer !!!

    Tout est objet !!!

    ____________________________________

    http://www.geekingmania.com

Discussions similaires

  1. Réponses: 10
    Dernier message: 20/09/2019, 22h36
  2. Comptage du nombre d'item selectionnée dans une grid
    Par mattmax dans le forum Débuter
    Réponses: 2
    Dernier message: 07/06/2010, 11h34
  3. Affichage de l'id d'un item selectionné dans une combobox
    Par Quorthon dans le forum Windows Forms
    Réponses: 7
    Dernier message: 28/01/2007, 18h45
  4. VB.NET Récuperer item selectionné dans une listview
    Par thechris33 dans le forum VB.NET
    Réponses: 3
    Dernier message: 09/01/2007, 13h09
  5. Réponses: 3
    Dernier message: 17/05/2006, 16h50

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