I have basically the following (simplified version):
public class Gadget
{
public int GadetId { get; set; }
public string Type { get; set; }
public string Height { get; set; }
public string Width { get; set; }
public List<GV> GadgetVar { get; set; }
}
public class GV
{
public string VarName { get; set; }
public string OptOperan { get; set; }
public bool IsSelected { get; set; }
}
Now I will have multiple kinds of Gadgets that share the following properties (Id, Type, Height, and Width), so I added them together under this one class instead of breaking them into a bunch of seperate classes for each Gadget and repeating those values in each class over and over again. They however, do have unique properties so I left those in their associated class ( class GV is a particular Gadget with unique properties to itself).
...
Go to the complete details ...