Hi Ciumac!
It doesn't look like your Start button Enabled property is bound to anything. I would make the following changes:
1. Convert your CanStartProcessing method to a Property.
public bool CanStartProcessing
{
get { return !_processing && Paths.Count > 0; }
}
2. Bind the Start button to that property.
<Button Command="{Binding StartCommand}" IsEnabled="{Binding CanStartProcessing}" />
3. Raise the PropertyChanged event for your CanStartProcessing property in addition to raising it for the Paths property.
if (DialogResult.OK == fbg.Show())
{
string selectedPath = fbg.SelectedPath;
Paths.Add(new Folder { Path = selectedPath, Count = 0 });
OnPropertyChanged("Paths");
OnPropertyChanged("CanStartProcessing");
}
Note that you will also need to raise PropertyChanged when the _processing flag changes, so that the button becomes disabled during processing.