AwesomeProperties 1.0.9

dotnet add package AwesomeProperties --version 1.0.9                
NuGet\Install-Package AwesomeProperties -Version 1.0.9                
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="AwesomeProperties" Version="1.0.9" />                
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add AwesomeProperties --version 1.0.9                
#r "nuget: AwesomeProperties, 1.0.9"                
#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 AwesomeProperties as a Cake Addin
#addin nuget:?package=AwesomeProperties&version=1.0.9

// Install AwesomeProperties as a Cake Tool
#tool nuget:?package=AwesomeProperties&version=1.0.9                

AwesomeProperties

Setup

Install on nuget market place or at this link: https://www.nuget.org/packages/AwesomeProperties/

Sample

Example with a listview bind with a custom class ElectricCar and ThermalCar inherit from a class Car

alt text alt text

Awesome properties also support graphics library like WPF-UI:

alt text

Basic Usage

To show on the properties window you should mark with PropertyField attribute

Some property type are available:²

    public enum PropertyType
    {
        None,
        Text,
        Int,
        CheckBox,
        Dropdown
    }

Basic class declaration:

    public class Example
    {
        [PropertyField(PropertyType.Text, "Name")]
        public string Name { get; set; }

        [PropertyField(PropertyType.Text, "Model")]
        public string Model { get; set; }

        public Example()
        {

        }
    }

Create new instance of your custom class


    public class MainWindow
    {
        public Example MyCustomClass{ get; set;}

        public Example()
        {
            MyCustomClass = new Example();
        }
    }

To show the properties panel:


    public void ShowProperties(){
        //Put your data to bind in the constructor of PropertiesPanel
        PropertiesPanel panel = new PropertiesPanel(MyCustomClass);
        
        //Add the property panel to a container
        MyGrid.Children.Clear();
        MyGrid.Children.Add(panel);
    }

Advance Usage


    public class Example
    {
        [PropertyField(PropertyType.Text, "Name")]
        public string Name { get; set; }

        [PropertyField(PropertyType.Text, "Model")]
        public string Model { get; set; }

        public Example()
        {

        }
    }
Product Compatible and additional computed target framework versions.
.NET net5.0-windows7.0 is compatible.  net6.0-windows was computed.  net6.0-windows7.0 is compatible.  net7.0-windows was computed.  net8.0-windows was computed. 
.NET Framework net471 is compatible.  net472 is compatible.  net48 is compatible.  net481 was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

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
1.0.9 273 3/6/2023
1.0.8 229 3/5/2023
1.0.7 240 2/25/2023
1.0.6 240 2/23/2023
1.0.5 253 2/23/2023
1.0.4 246 2/23/2023
1.0.3 241 2/20/2023
1.0.2 244 2/19/2023
1.0.1 240 2/18/2023
1.0.0 235 2/16/2023
0.1.1 250 2/15/2023
0.1.0 232 2/15/2023

First release