I have modified the Telerik demo outlining a customer ContentProvider for the FileExplorer to only display files with a ".pdf" extension. However, the modified demo code is not properly selecting these files, returning everything in the assigned InitialPath, including folders.
Code Behind:
PageLoad:
Dim path As String
If upsRadTreeView.SelectedValue = Nothing Then
path = Page.ResolveUrl(
"~/CustomerData/" & Profile.CustomerNumber.ToString)
Else
path = Page.ResolveUrl(
"~/CustomerData/" & Profile.CustomerNumber.ToString & "/UPSData/" & upsRadTreeView.SelectedNode.Value.ToString)
End If
Dim paths As String() = {path}
documentsRadFileExplorer.InitialPath = path
documentsRadFileExplorer.Configuration.UploadPaths = paths
documentsRadFileExplorer.Configuration.ViewPaths = paths
documentsRadFileExplorer.Configuration.ContentProviderTypeName =
GetType(CustomProvider).AssemblyQualifiedName
Public
Class CustomProvider
Inherits FileSystemContentProvider
Public Sub New(ByVal context As HttpContext, ByVal searchPatterns As String(), ByVal viewPaths As String(), ByVal uploadPaths As String(), ByVal deletePaths As String(), ByVal selectedUrl As String, _
ByVal selectedItemTag As String)
MyBase.New(context, searchPatterns, viewPaths, uploadPaths, deletePaths, selectedUrl, _
selectedItemTag)
End Sub
Public Overloads Overrides Function ResolveDirectory(ByVal path As String) As DirectoryItem
Dim baseDirectory As DirectoryItem = MyBase.ResolveDirectory(path)
Dim files As New List(Of FileItem)()
' Filter the files
For Each file As FileItem In baseDirectory.Files
If file.Extension = ".pdf" Then
files.Add(file)
End If
Next
Dim newDirectory As New DirectoryItem(baseDirectory.Name, baseDirectory.Location, baseDirectory.FullPath, baseDirectory.Tag, baseDirectory.Permissions, files.ToArray(), _
baseDirectory.Directories)
Return newDirectory
End Function
End
Class
Please advise.
Thanks,
Erik