To perform mousewhel scrolling in a CFormView you have to enter the logic yourself. You have to respond to WM_MOUSEWHELL. Here's a snippet that worked for me: BOOL CSomeFormView::OnMouseWheel(UINT nFlags, short zDelta, CPoint pt) { // test if it is visible first if ( GetStyle() & WS_VSCROLL ) { CPoint ptScroll = GetScrollPosition(); // determine the amount of scrolling int nLines = -zDelta / WHEEL_DELTA; // Scroll to new position ScrollToPosition ( ptScroll + CPoint ( 0, nLines * 15 ) ); } return CFormView::OnMouseWheel(nFlags, zDelta, pt); }