0

私は完全に正常に動作するリストビューウィンドウブラウザーを持っています.iフォルダーブラウザーを介してフォルダーを開き、その特定のディレクトリ内のファイルとフォルダーを使用してリストビューで開きます

PopulateListView(path)

今、マウスのダブルクリックイベントで特定のファイルとフォルダーを開くと、ファイルが開きますが、ディレクトリを開くと新しいウィンドウがポップアップします。そのディレクトリをリストビューコントロールで開く必要があります...このシナリオのコードは

private void listView1_MouseDoubleClick(object sender, MouseEventArgs e)
        {
            string pathdoubleClicked = listView1.FocusedItem.Tag.ToString();
          PopulateListView(pathdoubleClicked);

            Process.Start(pathdoubleClicked);
             simpleStack.Push(pathdoubleClicked);
        }

今、私はパスがdrectoryのものである場合のように、それ以外の場合はpopulatelistviewメソッドに移動し、他の方法でprocess.startを使用してそれを実行したいと考えていますが、これはどのように行うことができますか

4

1 に答える 1

1

私が理解していることから、パスがディレクトリの場合、ダブルクリックでその内容を表示したいと考えています。ファイルの場合は、それを開きます。

したがって、次のようにするだけです。

private void listView1_MouseDoubleClick(object sender, MouseEventArgs e)
{
    string pathdoubleClicked = listView1.FocusedItem.Tag.ToString();

    if (System.IO.Directory.Exists(pathdoubleClicked))
    {
        PopulateListView(pathdoubleClicked);
    }
    else
    {
        Process.Start(pathdoubleClicked);
    }

    // ?
    simpleStack.Push(pathdoubleClicked);
}
于 2013-01-11T12:41:18.210 に答える