That's quite odd. I just tried that same code myself, and it worked beautifully...
In the .ascx control, I have the following:
<asp:DropDownList ID="DropDownList" runat="server" DataTextField="TabName" DataValueField="TabId" />
In the Page_Load, I've got the following:
this.DropDownList.DataSource = DotNetNuke.Common.Globals.GetPortalTabs(PortalSettings.DesktopTabs, TabId, true, false, false, true, true);
this.DropDownList.DataBind();
Can you debug and see if the call to GetPortalTabs returns anything?
Hope that helps,