Visualizzazione dei risultati da 1 a 6 su 6
  1. #1

    [vb.net] Realizzare una classe riutilizzabile

    Voglio costruire una classe che mi permetta di gestire facilmente l'interazione XML - DATASET e viceversa... Allora ho questa domanda da fare: quando istanzio un oggetto dataset mi propone le proprietà Table, ecc... e entrato in Table mi offre i metodi add ecc... (lo smart tag). Purtroppo io non riesco a definire una proprietà che mi permetta di visualizzare i metodi o meglio l'unica dichiarazione di proprietà che so' è quella GET e SET ma come faccio ad elencare poi i metodi? thanks

  2. #2
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    24,472
    Si è capito poco o nulla... una proprietà che visualizza metodi? Cosa vuol dire? :master:
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

    Home | Blog | Delphi Podcast | Twitch | Altro...

  3. #3
    In pratica quando istanzio la classe che ho creato lo smart tag mi visualizza solo i metodi giustamente. Io voglio realizzare un raggruppamento come accade per i dataset esempio... Voglio mettere tutti i metodi riferiti alle tabelle in un insieme... in sostanza una copia del dataset che quando istanzio la classe la classe mi dice tables... poi io o seleziono il metodo ADD oppure gli indico la tabella "("nometabella")." e continuo con le altre proprietà esempio row... ecc... è così via...
    Immagini allegate Immagini allegate

  4. #4
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    24,472
    Originariamente inviato da pacixone
    In pratica quando istanzio la classe che ho creato lo smart tag mi visualizza solo i metodi giustamente. Io voglio realizzare un raggruppamento come accade per i dataset esempio... Voglio mettere tutti i metodi riferiti alle tabelle in un insieme... in sostanza una copia del dataset che quando istanzio la classe la classe mi dice tables... poi io o seleziono il metodo ADD oppure gli indico la tabella "("nometabella")." e continuo con le altre proprietà esempio row... ecc... è così via...
    Non si tratta di "raggruppamenti", sono semplicemente altre classi.

    I metodi e le proprietà che ti appaiono "raggruppati", sono semplicemente oggetti, appartenenti ad una determinata classe, di cui si compone un oggetto più esterno: il DataSet crea al suo interno una Collection di Tables, ciascun elemento della Collection è un oggetto Table... tutti questi oggetti possiedono i metodi e le proprietà definite nelle rispettive classi di appartenenza.

    Si tratta, in sostanza, di creare semplicemente delle classi e di utilizzarle secondo il principio della composizione.

    Ciao!
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

    Home | Blog | Delphi Podcast | Twitch | Altro...

  5. #5
    lo so' che ti chiedo troppo ma ti andrebbe di far un esempio veloce? classe animali... non so' giusto per darmi una visione del codice... ti ringrazio in tutti i casi... magari poi lo metti anche sul blog

  6. #6
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    24,472
    Originariamente inviato da pacixone
    lo so' che ti chiedo troppo ma ti andrebbe di far un esempio veloce? classe animali... non so' giusto per darmi una visione del codice... ti ringrazio in tutti i casi... magari poi lo metti anche sul blog
    Ti riporto un esempio costruito in modo molto molto rapido:

    Codice PHP:
    Public Class ContainerClass

        
    ' Campi
        Private mChildObj As New ChildClass

        ' 
    Proprietà
        
    Public ReadOnly Property ChildObj() As ChildClass
            Get
                
    Return mChildObj
            End Get
        End Property

    End 
    Class


    Public Class 
    ChildClass

        
    ' Campi
        Private mDummy As String

        ' 
    Proprietà
        
    Public Property Dummy() As String
            Get
                
    Return mDummy
            End Get
            Set
    (ByVal value As String)
                
    mDummy value
            End Set
        End Property

    End 
    Class


    Public Class 
    Consumer

        
    ' Metodi
        Public Sub Test()

            ' 
    Crea un'istanza della classe principale
            Dim ContainerObj As New ContainerClass

            ' 
    Accede alla proprietà dell'oggetto usato per composizione
            ContainerObj.ChildObj.Dummy = "......"

        End Sub

    End Class 
    La classe ContainerClass rappresenta quella più esterna, la principale, che si compone di un'istanza (oggetto) della classe ChildClass, esponendo il riferimento all'oggetto attraverso una proprietà; l'oggetto ChildClass possiede poi una proprietà del tutto pretestuosa (creata solo a titolo esemplificativo), mentre la classe Consumer, anch'essa definita solo per poter creare un metodo in cui viene indicato come si accede alla proprietà dell'oggetto ChildClass che compone la classe ContainerClass.

    Più che una questione sintattica, comunque, temo che il tuo problema sia logico: devi prima approfondire gli argomenti che riguardano la programmazione ad oggetti in generale, ed esaminare attentamente l'uso e gli scopi di ereditarietà e composizione; quando hai ben chiaro gli ambiti in cui deve essere utilizzata (o dove è utile farlo), la sintassi poi è solo un breve passo che si compie leggendo la mera documentazione del linguaggio.

    Ciao!
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

    Home | Blog | Delphi Podcast | Twitch | Altro...

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.