If I understand correctly, the sections list is a mixed list, containing Highlights and Tweets, and maybe other types.
I might suggest an approach where the Sections property returns List<Section>, but you could also add a FilterSection<T> which will return only the elements of the requested typeHow about using generics:
class DataSection<TCategoryData> where TCategoryData : CategoryData
{
...
List<Section>string Sectionstype{get;set;}
IEnumerable<T> FilterSections<T>() where T :ObservableCollection<TCategoryData> SectionbaseResults{get;set;}
}
class HighlightSection : Section<Highlights> {}
return Sections.OfType<T>();
class TweetSection : }
Section<Tweets> ...
{}