Leave the TAB out for now.

Later add it in. Then as the user changes the TAB switches you will get a message in the callback as to which is showing. If it is the one for the list box display it on screen
Code:
//then set its position on top of the TAB ctrl
GetClientRect( GetDlgItem( hwnd, IDC_TAB_CTRL) ,&ClientRect);
SetWindowPos(GetDlgItem( hwnd, IDC_LISTBOX), HWND_TOP, 
ClientRect.left, ClientRect.top, ClientRect.right-ClientRect.left, ClientRect.bottom-ClientRect.top, 
SWP_SHOWWINDOW);
UpdateWindow( GetDlgItem( hwnd, IDC_LISTBOX));//call a paint
if not just hide it till you need it again
ShowWindow( GetDlgItem( hwnd, IDC_LISTBOX), SW_HIDE);