У меня следующий вопрос.
У меня есть один класс "Instellingen", это поле в 3 других классах
public class Instellingen
{
private int _ID;
}
public class Class1: Button
{
private Instellingen _Instellingen;
}
public class Class2 : Label
{
private Instellingen _Instellingen;
}
public class Class3 : TextBox
{
private Instellingen _Instellingen;
}
Если у меня есть другой класс, который использует другие классы (но это может быть любой из этих 3 классов)
Должен ли я использовать переключатель? или есть более простой способ?
public class AnotherClass
{
public AnotherClass ()
{
GetInstellingenFromClass(new Class1());
GetInstellingenFromClass(new Class2());
GetInstellingenFromClass(new Class3());
}
private void GetInstellingenFromClass(Control c)
{
switch (c.GetType.ToString())
{
case "Class1":
Class1 klasse = (Class1) c;
//Do something with the _Instellingen of this class
break;
case "Class2":
Class2 klasse2 = (Class2) c;
//Do something with the _Instellingen of this class
break;
case "Class3":
Class3 klasse3 = (Class3)c;
//Do something with the _Instellingen of this class
break;
}
}
}
(существует ли что-то, так что я могу просто сделать что-то вроде c._Instellingen -> без предварительного преобразования его в нужный тип, где не имеет значения, какой тип c?)
Надеюсь, вы понимаете мой вопрос.
Спасибо