Skip to content

ColumnsFolderView

0x5BFA edited this page Mar 1, 2025 · 9 revisions

Implementation

<UserControl ...>

    <Grid x:Name="ColumnsGrid" />

</UserControl>
public IReadonlyCollection<IColumnFolderView> Columns { get; }
public event NewColumnAdded;

public ColumnsFolderView()
{
    InitializeComponents();

    // Add the first column
    AddColumn(CurrentRootFolder);
}

private void AddColumn(IFolder folder)
{
    if (ColumnsGrid.Children.Count != 0)
    {
        // Add a sizer
    }

    // Add a column
}

private void ColumnFolderView_SelectionChanged(object? sender, SelectionChangedEventArgs e)
{
    if (...)
        return;

    AddColumn(...);
}

Manipulation in FolderBrowser

private void ColumnsFolderView_ColumnAdded(object? sender, ColumnsFolderViewColumnAddedEventArgs e)
{
    if (e.Column is {} column)
    {
        // Adjust width based on the user settings
    }
}
Controls
  • FolderBrowser
  • DetailsFolderView
  • GridFolderView
  • ListFolderView
  • TilesFolderView
  • ContentFolderView
  • ColumnsFolderView
  • TreeFolderView
  • GalleryFolderView
  • HomeFolderView
  • RectanglurSelectionVisual
  • DataGrid
  • SidebarView
  • Omnibar
  • Toolbar
  • FilePreviewPresenter
  • ColorTags
  • RichTokens
  • TerminalView
API
  • WindowsStorable
  • ArchiveStorable
  • HomeStorable
  • FtpStorable
  • SftpStorable
  • WebDAVStorable
Infrastructure
  • CommandManager
  • MultitaskingManager
  • DialogManager
  • AppSettings
  • OperationServer

Copyright © 2025 0x5BFA. All rights reserved. Do not copy or redistribute modified versions.

Clone this wiki locally