public void search(String _searchString, ContentDirectorySearchType _searchType = ContentDirectorySearchType.Artist)
{
UPNPMediaListBrowse currentList, searchList;
String containerId = this.buildContainerIdForSearch(mainContentType, _searchType);
String raumfeldSearchString;
raumfeldSearchString = "raumfeld:any contains \"" + _searchString + "\"";
raumfeldSearchString = "dc:title contains \"" + _searchString + "\"";
currentList = (UPNPMediaListBrowse)this.getList(this.containerIdToListId(currentContainerId, mainContentType));
if (currentList != null && !currentList.isSearchChild)
this.setSearchListParentIdFromMainContentType(mainContentType, this.containerIdToListId(currentContainerId, mainContentType));
// always create new search List
searchList = (UPNPMediaListBrowse)this.createListObject("Search=" + this.getMainContentType().ToString() + "Type=" + _searchType.ToString() + "ID=" + containerId);
//searchList = new UPNPMediaListBrowse("Search=" + this.getMainContentType().ToString() + "Type=" + _searchType.ToString() + "ID=" + containerId);
searchList.listDataReady += listDataReadySink;
searchList.parentListId = this.getSearchListParentIdFromMainContentType(mainContentType);
searchList.isSearchChild = true;
searchList.path = mainContentType.ToString() + " Suchergebnis für '" + _searchString + "' ";
if (this.getList(searchList.listId) != null)
lists[searchList.listId] = searchList;
else
lists.Add(searchList.listId, searchList);
searchList.retrieveListByContainerId(containerId, raumfeldSearchString);
}