CControlUI* CContainerUI::FindControl(LPCTSTR name) { UINT hash = HashKey(name); if(hash == m_name) return static_cast<CControlUI*>(this); else{ for(int i=0; i<m_items.GetSize(); i++){ CControlUI* pControl = static_cast<CControlUI*>(m_items[i]); CControlUI* pSubControl = NULL; pSubControl = pControl->FindControl(name); if(pSubControl) return pSubControl; } } return NULL; }