Один из самых простых способов - поставить проверку типа в связанных свойствах источника данных. Например, @Preet уже указал на переопределение DataSource
setter. Проблема только в подходе, что вам нужно также позаботиться о ситуации, когда элемент управления связан с использованием DataSourceID
.
Я скорее рекомендую поставить проверку типа в методе DataBoundControl.PerformDataBinding - это, конечно, при условии, что вы унаследовали от класса DataBoundControl
. Этот метод вызывается так, чтобы производный класс мог фактически связать данные - так что он является хорошим кандидатом. Другой эквивалент - поставить чек на OnDataBind
.
Еще один способ - представить конкретную коллекцию как свойство для принятия данных. В таком случае вам следует избегать выставления DataSource
связанных свойств.