views:

1037

answers:

5

I want a way to list files in a directory and putting a check box beside each one of them so I can select some of them and perform operations with each selected file, what's the best way to do this?

+2  A: 

You can use checked list box control which is built-in winforms control (see links below):

http://www.functionx.com/vcsharp/controls/checkedlistbox1.htm

http://msdn.microsoft.com/en-us/library/3ss05xx6.aspx

milot
+2  A: 

The CheckedListBox control would be a good start :)

Vincent Van Den Berghe
+3  A: 

Drop a CheckedListBox control onto the form, then populate the contents using the DirectoryInfo and FileSystemInfo classes, like this:

System.IO.DirectoryInfo di = new System.IO.DirectoryInfo("c:\\");
System.IO.FileSystemInfo[] files = di.GetFileSystemInfos();
checkedListBox1.Items.AddRange(files);
Ian Nelson
+1  A: 

You can also use the OpenFileDialog class. This will display the standard windows open file dialog and you can set it to allow selection of multiple files.

In many cases using a standard dialog can be easier for the user than using your custom user interface.

Try something like this:

OpenFileDialog fileDialog = new OpenFileDialog();
fileDialog.InitialDirectory =@"C:\temp\";
fileDialog.Multiselect = true;
if (fileDialog.ShowDialog() == DialogResult.OK)
{
  string[] files = fileDialog.FileNames;
}

Or you can add the dialog in the forms designer and set its properties there.

Rune Grimstad
A: 

Check out FileView Control It can show files/folders with check boxes.