EleCho.WpfSuite 0.2.1

The ID prefix of this package has been reserved for one of the owners of this package by NuGet.org. Prefix Reserved
dotnet add package EleCho.WpfSuite --version 0.2.1
NuGet\Install-Package EleCho.WpfSuite -Version 0.2.1
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="EleCho.WpfSuite" Version="0.2.1" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add EleCho.WpfSuite --version 0.2.1
#r "nuget: EleCho.WpfSuite, 0.2.1"
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install EleCho.WpfSuite as a Cake Addin
#addin nuget:?package=EleCho.WpfSuite&version=0.2.1

// Install EleCho.WpfSuite as a Cake Tool
#tool nuget:?package=EleCho.WpfSuite&version=0.2.1

EleCho.WpfSuite

WPF layout panels, controls, value converters, markup extensions, transitions and utilities

Usage

Add XML namespace to your XAML file:

<Window x:Class="WpfTest.MainWindow"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
        xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
        xmlns:local="clr-namespace:WpfTest"
        xmlns:ws="https://github.com/OrgEleCho/EleCho.WpfSuite"
        mc:Ignorable="d"
        Title="MainWindow" Height="450" Width="800">

    ...     

</Window>

Enjoy!

<Window x:Class="WpfTest.MainWindow"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
        xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
        xmlns:local="clr-namespace:WpfTest"
        xmlns:ws="https://github.com/OrgEleCho/EleCho.WpfSuite"
        mc:Ignorable="d"
        Title="MainWindow" Height="450" Width="800">

    <ws:ScrollViewer Margin="12"
                     ScrollWithWheelDelta="True">
        <ws:StackPanel Spacing="8">
            <ws:TextBox Width="200"
                        Placeholder="This is a text box with placeholder"/>
            <ws:Image Source="/Assets/TestAvatar.jpg"
                      CornerRadius="10"/>

            <StackPanel>
                <TextBlock Text="WrapPanel with spacing"/>
                <ItemsControl ItemsSource="{Binding TestItems}">
                    <ItemsControl.ItemsPanel>
                        <ItemsPanelTemplate>
                            <ws:WrapPanel HorizontalSpacing="8"
                                          VerticalSpacing="8"/>
                        </ItemsPanelTemplate>
                    </ItemsControl.ItemsPanel>
                </ItemsControl>
            </StackPanel>
        </ws:StackPanel>
    </ws:ScrollViewer>

</Window>

Features

Layout panels:

  • StackPanel: Origin stack panel with Spacing property
  • WrapPanel: Origin wrap panel with HorizontalSpacing and VerticalSpacing property
  • FlexPanel: Flex layout implementation with HorizontalSpacing and VerticalSpacing property

Controls:

  • Image: Simple image control with CornerRadius property
  • SlicedImage: Simple image control for drawing '9SliceSprite'
  • Button: Origin button with CornerRadius property
  • ToggleButton: Origin toggle button with CornerRadius property
  • ScrollViewer: Origin scroll viewer with 'MouseWheelDelta' based scrolling and scroll smoothing feature
  • ConditionalControl: Display the control based on the condition
  • TextBox: Origin text box with Placeholder and CornerRadius property
  • ListBox: Origin list box with CornerRadius property
  • ListBoxItem: Origin list box item with CornerRadius property
  • TransitioningContentControl: ContentControl that allows you to set transitions
  • Frame: Frame that allows you to set transitions
  • ProgressBar: Origin progress bar with CornerRadius property
  • Border: Origin border with ContentClip property for binding

Transitions:

  • SlideTransition: Moves the old page out of view, and the new page into view
  • FadeTransition: Fades out the current page and fades in the new page by animating the opacity
  • SlideFadeTransition: SlideTransition and FadeTransition
  • ScaleTransition: Scale the old page to smaller and fade out, and scale the new page from a larger zoom to 1 and fade in

Value converters:

  • AddNumberConverter: Mathematical calculations, addition
  • SubtractNumberConverter: Mathematical calculations, subtraction
  • MultiplyNumberConverter: Mathematical calculations, multiplication
  • DivideNumberConverter: Mathematical calculations, division
  • NumberCompareConverter: Compare between numbers, support equal, not equal, greator than, greator or equal, less than, less or equal
  • EqualConverter: Check if the value equals converter parameter
  • NotEqualConverter: Check if the value not equal to converter parameter
  • ValueIsNullConverter: Determines whether the object is empty
  • ValueIsNotNullConverter: Determines whether the object is not empty
  • InvertBooleanConverter: Inverts the boolean value
  • ValueConverterGroup: Converts the value using the specified multiple converters
  • StringIsNullOrEmptyConverter: Check if string is null or empty, returns a boolean value
  • StringIsNotNullOrEmptyConverter: Check if string is not null or empty, returns a boolean value
  • StringIsNullOrWhiteSpaceConverter: Check if string is null or white space, returns a boolean value
  • StringIsNotNullOrWhiteSpaceConverter: Check if string is not null or white space, returns a boolean value
  • CollectionIsNullOrEmptyConverter: Check if collection is null or empty, returns a boolean value
  • CollectionIsNotNullOrEmptyConverter: Check if collection is not null or empty, returns a boolean value
  • StringToImageSourceConverter: Convert any valid URI string to image source
  • NumberToThicknessConverter: Convert number to uniform thickness
  • NumberToCornerRadiusConverter: Convert number to uniform corner radius

Markup extensions:

  • String: Represents text as a sequence of UTF-16 code units. (returns System.String)
  • Char: Represents a character as a UTF-16 code unit. (returns System.Char)
  • Boolean: Represents a Boolean (true or false) value. (returns System.Boolean)
  • Byte: Represents an 8-bit unsigned integer. (returns System.Byte)
  • Int16: Represents a 16-bit signed integer. (returns System.Int16)
  • Int32: Represents a 32-bit signed integer. (returns System.Int32)
  • Int64: Represents a 64-bit signed integer. (returns System.Int64)
  • Single: Represents a single-precision floating-point number. (returns System.Single)
  • Double: Represents a double-precision floating-point number. (returns System.Double)
  • Decimal: Represents a decimal floating-point number. (returns System.Decimal)
  • HsvColor: Represents a color from HSV color space values (returns System.Windows.Media.Color)

Animations:

  • CornerRadiusAnimation: Animates the value of a CornerRadius property between two target values using linear interpolation over a specified Duration.

Utilities:

  • BindingProxy: A utility class for binding, commonly used when a collection element has property to be bound to a page DataContext
  • ScrollViewerUtils: Utilities for set vertical offset and horizontal offset of scroll viewer and scroll content presenter
  • ItemsControlUtils: Utilities for removing item from ItemsControl with transitions
  • ColorUtils: Utilities for color calculation
  • BooleanValues: Static value of boolean 'true' and 'false'
  • ValidationUtils: DependencyProperty validation utilities
Product Compatible and additional computed target framework versions.
.NET net6.0-windows7.0 is compatible.  net7.0-windows was computed.  net8.0-windows was computed.  net8.0-windows7.0 is compatible. 
.NET Framework net45 is compatible.  net451 was computed.  net452 was computed.  net46 is compatible.  net461 was computed.  net462 was computed.  net463 was computed.  net47 is compatible.  net471 was computed.  net472 was computed.  net48 is compatible.  net481 was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.
  • .NETFramework 4.5

    • No dependencies.
  • .NETFramework 4.6

    • No dependencies.
  • .NETFramework 4.7

    • No dependencies.
  • .NETFramework 4.8

    • No dependencies.
  • net6.0-windows7.0

    • No dependencies.
  • net8.0-windows7.0

    • No dependencies.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last updated
0.2.1 76 4/25/2024
0.2.0 77 4/24/2024
0.1.6 81 4/20/2024
0.1.5 78 4/18/2024
0.1.4 66 4/18/2024
0.1.3 72 4/18/2024
0.1.2 86 4/17/2024
0.1.1 86 4/16/2024
0.1.0 83 4/16/2024
0.0.14 74 4/15/2024
0.0.13 78 4/15/2024
0.0.12 68 4/15/2024
0.0.11 79 4/14/2024
0.0.10 100 4/13/2024