Для чего нужен Control.IsHandleCreated?

Я изучаю источник встроенного .net элемента управления TabControl и вижу, что он ссылается на это свойство, прежде чем принять решение о добавлении или вставке страницы TabPage в коллекцию.

if (this.owner.IsHandleCreated)
{
    this.owner.AddTabPage(tabPage, tabPage.GetTCITEM());
}
else
{
    this.owner.Insert(this.owner.TabCount, tabPage);
}

Обе функции в конечном итоге достигают одной и той же цели - они добавляют TabPage в конец внутренней коллекции "TabPages"... но я просто не понимаю, почему должно быть важно, какую функцию вы используете.

this относится к ControlCollection, которая перекрывает встроенную Control.ControlCollection. owner - это TabControl, который использует ControlCollection.

11
задан agent154 6 February 2012 в 03:53
поделиться