自定义 CHeaderCtrl , 宽度没法设定了

自定义 CHeaderCtrl , 宽度无法设定了
如题

在自定义的列表控件里加了这个
void CCmdInfoList::PreSubclassWindow() 
{
// TODO: Add your specialized code here and/or call the base class
CListCtrl::PreSubclassWindow();

CHeaderCtrl *pheaderctrl = GetHeaderCtrl();
m_Header.SubclassWindow(pheaderctrl->GetSafeHwnd());
}

自定义的表头控件加了这个函数

LRESULT OnLayout(WPARAM wparam, LPARAM lparam);

ON_MESSAGE(HDM_LAYOUT, OnLayout)

LRESULT CMyHeaderCtrl::OnLayout(WPARAM wparam, LPARAM lparam)
{
LRESULT lResult = CHeaderCtrl::DefWindowProc(HDM_LAYOUT, 0, lparam);
HD_LAYOUT &hdl = *(HD_LAYOUT*)lparam;

RECT *prc = hdl.prc;
WINDOWPOS *pwpos = hdl.pwpos;

int nHeight = 50;
pwpos->cy = nHeight;
prc->top = nHeight;
return lResult;
}

表头的高度是改变了,但是宽度每次运行都是0,不是按我InsertColumn时设定的宽度显示,请gs指教

------解决方案--------------------
不要用分数诱惑我,我抵挡不住,哈哈