ビューモードとしてFVM_AUTO(-1)フラグを指定したIShellViewインスタンスを使用しています。つまり、エクスプローラーは、表示されたフォルダーのコンテンツに適合するビュースタイルを選択する必要があります。これは、サムネイルなどの詳細以外のビュースタイルで列ヘッダーが表示されるという事実を除いて、正常に機能します。
IShellViewオブジェクトとビューウィンドウは次のように作成されます。
ShellFolder1.CreateViewObject(this.Handle,
ref IID_IShellView,
out shellViewObject));
IShellView shellView = shellViewObject as IShellView;
FolderSetting folderSettings = new FolderSetting();
folderSettings.ViewMode = (int)View; // view is FVM_AUTO = -1
folderSetting.FolderFlags = FolderFlags.NoClientEdge
| FolderFlags.ExtendedTiles
| FolderFlags.AutoArrange
// only columnheaders for view mode details
| FolderFlags.NoHeaderInAllViews;
shellView.CreateViewWindow(oldView, ref folderSettings, isb,
ref rect, ref m_ShellViewHandle);
使用可能なフォルダーフラグのリストは、次の場所にあります: http: //msdn.microsoft.com/en-us/library/bb762508 (VS.85).aspx
自動表示モードで列ヘッダーを「詳細」にのみ表示するようにビューに指示する方法はありますか?FolderFlags.NoColumnHeaderを設定しても何も変更されません。
ありがとう