vs2008基于对话框的程序静态picturebox里面图片没显示出来解决方案

vs2008基于对话框的程序静态picturebox里面图片没显示出来
C/C++ code
void CFingerprintDlg::OnBnClickedButtonOpen()
{
    // TODO: 在此添加控件通知处理程序代码
    CString ImagePathName;
    CFileDialog dlg(TRUE,_T("bmp"),_T(".bmp"),OFN_HIDEREADONLY|OFN_OVERWRITEPROMPT,_T("Bitmap(*.BMP)|*.BMP||"));
    //设置文件对话框的对象变量
    HBITMAP m_hImage;
    if (dlg.DoModal()!=IDOK)
    {
        return; //如果对话框选择了文件
    }

    ImagePathName=dlg.GetPathName();
    //把对话框类选择的文件赋给图像文件路径变量,获取图像数据句柄
    m_hImage=(HBITMAP)LoadBitmap(AfxGetInstanceHandle(),dlg.GetPathName());
    //显示图像对话框
    GetDlgItem(IDC_STATIC_IMAGE)->SendMessage(STM_SETIMAGE,IMAGE_BITMAP,(LPARAM)m_hImage);

}

这个代码哪里不全还是什么问题?

------解决方案--------------------
楼主先把路径打印出来,是否正确。
用GetLastError看看图片加载是否成功,
然后Invalidate试试刷新picturebox。
------解决方案--------------------
C/C++ code
   Bitmap^ MyImage;

public:
   void ShowMyImage( String^ fileToDisplay, int xSize, int ySize )
   {

      // Sets up an image object to be displayed.
      if ( MyImage != nullptr )
      {
         delete MyImage;
      }


      // Stretches the image to fit the pictureBox.
      pictureBox1->SizeMode = PictureBoxSizeMode::StretchImage;
      MyImage = gcnew Bitmap( fileToDisplay );
      pictureBox1->ClientSize = System::Drawing::Size( xSize, ySize );
      pictureBox1->Image = dynamic_cast<Image^>(MyImage);
   }