01/03/11 17:39
HeDo
Allora, quelle che tu chiami "proprietà di proprietà" o "proprietà nidificate" altro non sono che proprietà (o campi) di oggetti che sono proprietà di un oggetto.
Quello che vuoi fare te si può implementare molto semplicemente ereditando dalla classe Exception e implementando un opportuno costruttore:
Class MyException Inherits Exception Public Sub New() MyBase.New("Process Failed") End Sub End Class
in questo modo potrai sollevare l'eccezione MyException senza doverti preoccupare del message, perchè verrà visualizzato "Process Failed":
Throw New MyException()
in alternativa potevi fare qualcosa di questo genere:
Throw New Exception("Process Failed")
aaa
02/03/11 10:54
Il Totem
No, non è quello che vuole fare, presumo.
Nel tuo esempio TextBox1 è un oggetto di tipo TextBox, il quale espone la proprietà Text, che contiene un oggetto di tipo stringa. Tutte le stringhe dispongono della proprietà Length; quindi, come ha detto HeDo, il concetto che hai di proprietà nidificate è sbagliato. Non esistono cose del genere. Esistono solo proprietà che restituiscono altri oggetti con altre proprietà.
Esempio:
Nel tuo esempio TextBox1 è un oggetto di tipo TextBox, il quale espone la proprietà Text, che contiene un oggetto di tipo stringa. Tutte le stringhe dispongono della proprietà Length; quindi, come ha detto HeDo, il concetto che hai di proprietà nidificate è sbagliato. Non esistono cose del genere. Esistono solo proprietà che restituiscono altri oggetti con altre proprietà.
Esempio:
class Person { public Person Father { get; set; } public Person Mother { get; set; } public Person Mate { get; set; } public List<Person> Children { get; set; } // ... } // Assumendo che non esistano oggetti nulli: Person mySelf = new Person("Mario", "Rossi", "6/7/1980"); // ... // Ecco il comportamento che chiami proprietà nidificate: Person grandFather = mySelf.Father.Father; // nonno Person motherInLaw = mySelf.Mate.Mother; // suocera Person nephew = mySelf.Father.Children[1].Children[0]; // nipote (di zio)
aaa