FileTreeView and Drag&Drop

There is this juce assert when I am dragging an Item inside my fileTreeComponent :
" to be able to do a drag-and-drop operation, the treeview needs to be inside a component which is also a DragAndDropContainer."
My class FileTreeView is placed inside the mainComponent, which is stated as a DragAndDropContainer.

Here is the code for my class FileTreeView:

class FileTreeView : public Component, DragAndDropContainer, private FileBrowserListener

FileTreeView () :   thread ("audio file preview"),
					directoryToShow (nullptr, thread),
					fileTreeComp (directoryToShow)
	setBounds (0, 0, 200, 160);
	rootFolderForSoundLibrary =
	directoryToShow.setDirectory (rootFolderForSoundLibrary, true, true);
	fileTreeComp.setDragAndDropDescription	("draggedFromRoot");
	thread.startThread (3);
	fileTreeComp.addListener (this);
	fileTreeComp.setBounds (getLocalBounds().reduced (4));
void paint (Graphics& g) override
	g.fillAll (Colours::white);
void resized() override
void selectionChanged() override
	if (fileTreeComp.getSelectedFile().exists())
		DBG(" FILE SELECTED = " << fileTreeComp.getSelectedFile().getFileName());
void fileClicked (const File&, const MouseEvent&) override          {}
void fileDoubleClicked (const File&) override                       {}
void browserRootChanged (const File&) override			{}
std::function<void (const String& file)> fileChoosenCallback;


TimeSliceThread 		thread;
DirectoryContentsList 	directoryToShow;
FileTreeComponent 		fileTreeComp;
File 					rootFolderForSoundLibrary;


You know, when DragAndropContainer is not declared public, it don’t work…