初心者なんですが質問があります。

ドラッグ&ドロップされたフォルダの中身を検索し、サブディレクトリがあれば再帰処理でサブディレクトリ内も検索して全ファイルを表示する。

と言うプログラムを作ったんですが、表示ディレクトリのうち選択したディレクトリだけにしぼって再表示、
と言うのをやろうとしたところで悩んでしまってます。

MFC作法的にはdocクラスに検索内容を保存しておいて、再表示の際にそこから引っ張ってきて表示させればいいのだと思うのですが、
ファイルの総数はわからない状態で、再帰処理のループ中に順次保存用の変数を増やしていく、
と言う感じなんだろうと思うのですがどうやっていいのかよくわかりません。
ディレクトリ、ファイルを分けてソートしてから表示しているので保存用の変数も二種類居るだろうし、こういう場合はどのクラスにどんな変数を用意するとうまく行くのでしょうか?

それとも表示し直したいディレクトリ名で再検索する方がいいのでしょうか。
複数ディレクトリ内を選択、表示したいし、選び直しもできるようにしたいので
それはあまりうまくないかと思ってるんですが。

うまく伝えられてないかもしれませんが、どなたか教えてください。