Buongiorno a tutti,

visto che è ormai da quasi tre giorni che ci sto sbattendo la testa e non ci sono saltato fuori avrei una cosina da chiedervi:

Sto facendo una classe personalizzata (Agenda) che deve avere al suo interno l' istanza di un' altra classe (io direi una collection fortemente tipizzata)(Appuntamenti) che mi elenca un insieme di elementi di un' altra classe (Appuntamento).

Senza perdermi troppo in parentesi vi illustro quello che ho fatto:

codice:
 
Public Class Agenda
    Public Property Appunt as new Appuntamenti

End Class



Public Class Appuntamento
    Private _miao As String
    Public Property Miao As String
        Get
            Return _miao
        End Get
        Set(value As String)
            _miao = value
        End Set
    End Property
End Class

Public Class Appuntamenti
    Implements IList(Of appuntamento)
    Private _app As New List(Of appuntamento)

    Public Sub Add(item As Appuntamento) Implements System.Collections.Generic.ICollection(Of Appuntamento).Add
        _app .Add(item)
        Console.WriteLine("Added")
    End Sub

    ......
    .....
End Class

Ora, a livello di funzionamento è quello che cerco ma non riesco proprio a visualizzare correttamente la proprietà Appuntamenti nella propertygrid. Se invece di fare una classe che eredita da Ilist utilizzo direttamente
codice:
Public Class Agenda
    Public Property Appunt as new List(Of Appuntamento)
.....
End Class
Nel propertygrid mi visualizza la proprietà in modo accettabile ma non riesco più ad avere il controllo sugli eventi relativi alla collection (aggiunta, modifica, eliminazione...)

Se utilizzo un array (Public Property Appunt() as Appuntamento ={}) riesco a gestire gli eventi ma poi mi sembra più complicato e meno funzionale rispetto l' utilizzo di una collection che incorpora già tutto il necessario per aggiungere elimiare e trovare degli elementi al suo interno...


Grazie mille a tutti per l' interessamento!


Filippo