I'm trying to create a rebar but everything I put in it get's stretched to 100% of the rebar width, it's very weird and I can't see the problem.

I've already searched and gone over info at msdn relating to my problem and I turned up nothing that worked.

I'm using the following code to make rebars and bands:

Code:
HWND CreateReBar(HWND parent)
{
    REBARINFO barInfo;
    RECT rc;
    HWND rebar;
    
    rebar = CreateWindowEx(WS_EX_TOPMOST|WS_EX_TOOLWINDOW|WS_EX_LEFT|WS_EX_LTRREADING|WS_EX_RIGHTSCROLLBAR,
        REBARCLASSNAME,
        NULL,
        WS_CHILD|WS_VISIBLE|WS_CLIPSIBLINGS|WS_CLIPCHILDREN|RBS_VARHEIGHT|CCS_TOP|CCS_NODIVIDER,
        0,0,0,0,
        parent,
        NULL,
        GetModuleHandle(NULL),
        NULL);
    
    if(!rebar)
        return NULL;
    
    barInfo.cbSize = sizeof(REBARINFO);
    barInfo.fMask = 0;
    barInfo.himl = (HIMAGELIST)NULL;
    
    return rebar;
}

void CreateBand(HWND rebar,char *bandText,HWND child)
{
    REBARBANDINFO bandInfo;
    RECT rc;
    
    bandInfo.cbSize = sizeof(REBARBANDINFO);
    bandInfo.fMask = RBBIM_COLORS|RBBIM_TEXT|RBBIM_STYLE|RBBIM_CHILD|
                     RBBIM_CHILDSIZE|RBBIM_SIZE;
    bandInfo.fStyle = RBBS_CHILDEDGE|RBBS_GRIPPERALWAYS;
    bandInfo.clrFore = RGB(0,0,0);
    bandInfo.clrBack = GetSysColor(COLOR_BTNFACE);
    
    GetClientRect(child,&rc);
    bandInfo.lpText = bandText;
    bandInfo.cch = lstrlen(bandInfo.lpText);
    bandInfo.hwndChild = child;
    bandInfo.cxMinChild = 20;
    bandInfo.cyMinChild = rc.bottom - rc.top;
    bandInfo.cx = 50;
    SendMessage(rebar,RB_INSERTBAND,(WPARAM)-1,(LPARAM)&bandInfo);
}