Почему не все классы System.Web.UI.WebControl со свойствами Text реализуют ITextControl?

Мне любопытно, почему только некоторыеSystem.Web.UI.WebControl элементы управления реализуют определенные интерфейсы, когда они имеют одинаковые свойства интерфейса.

Например, есть много элементов управления, которые имеют свойство Text, но только следующая реализацияITextControl:

этикеткабуквальныйDataBoundLiteralТекстовое окноListControl

(TextBox и ListControl фактически реализуют IEditableTextControl, который реализует ITextControl)

TableCell, Button, HyperLink и другие не делают этого, поэтому я должен написать такой код

ITextControl textControl = control as ITextControl;
TableCell tableCell = control as TableCell;

if (textControl != null)
{
    textControl.Text = value;
}
else if (tableCell != null)
{
    tableCell.Text = value;
}

вместо этого

control.Text = value;

Было ли это дизайнерское решение или недосмотр?

Ответы на вопрос(1)

Ваш ответ на вопрос