-    wxCHECK_RET( N >= 0 && N < m_nNumItems,
-                 wxT("invalid index in wxListBox::Delete") );
-    wxListBox::Delete(N);
+    wxCArrayString chs(asChoices);
+    Create( pParent, vId, rPos, rSize, chs.GetCount(), chs.GetStrings(),
+            lStyle | wxLB_OWNERDRAW, rVal, rsName );
+} // end of wxCheckListBox::wxCheckListBox
+
+void wxCheckListBox::Delete(unsigned int n)
+{
+    wxCHECK_RET( IsValid(n),
+                 wxT("invalid index in wxCheckListBox::Delete") );
+    wxListBox::Delete(n);