当前位置: 代码迷 >> C# >> 同样是另存为,为啥对话框样子不一样
  详细解决方案

同样是另存为,为啥对话框样子不一样

热度:90   发布时间:2016-05-05 04:43:02.0
同样是另存为,为什么对话框样子不一样

上面这张图是用savefiledialog建立的对象显示出来的

下面这张图是对方软件的


问题:为什么不一样呢,怎么让C#也能做的跟下面的一样,有没什么简洁一点的方式,比如什么类或者设置什么属性了?

------解决思路----------------------
改进一下

char c_filename[256];
memset(c_filename,0,256);
OPENFILENAME ofn;
memset(&ofn,0,sizeof(ofn));
ofn.lStructSize = sizeof(ofn);//或者直接指定为OPENFILENAME_SIZE_VERSION_400 ;
ofn.Flags = OFN_FILEMUSTEXIST
------解决思路----------------------
OFN_EXPLORER;

if (ofn.lStructSize == OPENFILENAME_SIZE_VERSION_400)
{
//msdn : For compatibility reasons, the Places Bar is hidden if Flags is set to OFN_ENABLEHOOK and lStructSize is OPENFILENAME_SIZE_VERSION_400.
ofn.Flags 
------解决思路----------------------
= OFN_ENABLEHOOK;
}
else
{
ofn.FlagsEx = OFN_EX_NOPLACESBAR;
}

ofn.hwndOwner = NULL;
ofn.hInstance = NULL;
ofn.lpstrFilter = "txt file(*.txt)
------解决思路----------------------
*.txt\0";
ofn.lpstrFileTitle = c_filename;
ofn.nMaxFileTitle = 256;
ofn.lpstrFile = c_filename;
ofn.nMaxFile = 256;
ofn.lpstrTitle = "另存为";
GetSaveFileName(&ofn);
 
  相关解决方案