1.ON_NOTIFY_EX(HDN_ENDDRAG, 0, OnHeaderEndDragMethod)

3.Header_GetOrderArray
HWND HeaderCtrlHandle,
int TotalColumns, int *lpiArray;
//Header_GetOrderArray( HeaderCtrlHandle, TotalColumns,lpiArray);

lpiArray Contain Column present columns order

lpiArray={1,0,2};
if u want new first column text
GetItemText(Item(which item do u want),lpiArray[column]);
don't give sub item values 0 or 1 give like lpiArray[0] or lpiArray[1];

those will give present exact column values