Skip to content

jamesnet214/icommander

Repository files navigation

ICommander 英文 中文 韩文

A WPF-based in-window explorer application implementing MVVM pattern

License: MIT .NET Stars Issues

Project Overview

ICommander is a WPF-based application that replicates the functionality of Windows Explorer within a custom window. This project serves as an excellent example of implementing MVVM pattern in a real-world application, providing developers with insights into advanced WPF techniques and proper project structuring.

Key Technologies and Implementations

1. MVVM Architecture

  • Full implementation of MVVM pattern
  • Proper use of DataContext and Binding
  • Implementation of RelayCommand for action binding

2. Custom Controls and Templates

  • Development of custom controls for file and folder representation
  • Advanced usage of ControlTemplate and DataTemplate
  • Implementation of Triggers for dynamic UI updates

3. File System Integration

  • Integration with Windows file system using DllImport
  • Implementation of file and folder operations (create, delete, rename)
  • File and folder browsing with back and forward navigation

4. UI/UX Design

  • Creation of a Windows Explorer-like interface
  • Implementation of context menus for file and folder operations
  • Tab-based interface for multiple folder views

5. Performance Optimization

  • Efficient loading and display of file system contents
  • Smooth navigation and operation handling

Technology Stack

  • .NET 8.0
  • WPF (Windows Presentation Foundation)
  • C# 10.0
  • MVVM (Model-View-ViewModel) pattern

Getting Started

Prerequisites

  • Visual Studio 2022 or later
  • .NET 8.0 SDK

Installation and Execution

1. Clone the repository:

git clone https://github.com/jamesnet214/icommander.git

2. Open the solution

  • Visual Studio
  • Visual Studio Code
  • Jetbrains Rider

3. Build and Run

  • Windows 11 recommended

Usage

  1. Launch the ICommander application
  2. Navigate through your file system using the explorer-like interface
  3. Use context menus for file and folder operations
  4. Utilize the command prompt feature for advanced operations

Project Structure

The project is organized into five main folders:

  • Based: Contains core classes for file operations, window modules, and MVVM basics
  • Core: Defines basic controls and file converters
  • Implements: Includes layouts and resources
  • Presentation: Contains the main window and view models
  • Client: Entry point of the application

Contributing

If you'd like to contribute to improving the project, please send a Pull Request. All forms of contribution are welcome!

License

This project is distributed under the MIT license. For more details, please refer to the LICENSE file.

Contact

Explore advanced WPF techniques and MVVM implementation with ICommander!

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •  

Languages