2

私は現在、C#WPFプロジェクトに取り組んでいます。System.Windows.Forms名前空間にFolderBrowserDialogがあります。次のコード行を使用して、dlgという名前の変数を使用してダイアログのインスタンスを作成し、選択したパスをマイドキュメントに割り当てています。

dlg.SelectedPath = Environment.SpecialFolder.MyDocuments.ToString();

ただし、これはあまり違いがないようです。次に、同じことをルートパスで実行しようとしましたが、これにより、ルートがマイドキュメントとして設定され、マイドキュメント(C:\またはデスクトップ)から抜け出すことができなくなります。

デフォルトのパスを設定しながら、ドライブの使用可能なすべての領域へのアクセスを許可するにはどうすればよいですか。たとえば、デフォルトのパスをマイドキュメントにし、ユーザーがマイドキュメントの外からC:\またはデスクトップに移動できるようにします。

あなたが提供できるどんな助けにも感謝します。

4

1 に答える 1

4

に間違った値を割り当てていますSelectedPath。を設定することにより、文字列「MyDocuments」(または列挙型Environment.SpecialFolder.MyDocuments.ToString()で同じ値を持つ「Personal」 )をに設定します。有効なパスではないため、これは見つかりません。そのため、何も選択されません。Environment.SpecialFolderSelectedPath

次のコマンドを使用して、特別なフォルダのパスを検索する必要がありますEnvironment.GetFolderPath()

dlg.SelectedPath = Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments);

これにより、フォルダ参照ダイアログが開いたときに選択する特別なフォルダのパスが設定されます。

于 2011-08-17T22:03:35.473 に答える