YngveHestem.GenericParameterCollection.EtoForms 1.0.0

There is a newer version of this package available.
See the version list below for details.
dotnet add package YngveHestem.GenericParameterCollection.EtoForms --version 1.0.0                
NuGet\Install-Package YngveHestem.GenericParameterCollection.EtoForms -Version 1.0.0                
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="YngveHestem.GenericParameterCollection.EtoForms" Version="1.0.0" />                
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add YngveHestem.GenericParameterCollection.EtoForms --version 1.0.0                
#r "nuget: YngveHestem.GenericParameterCollection.EtoForms, 1.0.0"                
#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 YngveHestem.GenericParameterCollection.EtoForms as a Cake Addin
#addin nuget:?package=YngveHestem.GenericParameterCollection.EtoForms&version=1.0.0

// Install YngveHestem.GenericParameterCollection.EtoForms as a Cake Tool
#tool nuget:?package=YngveHestem.GenericParameterCollection.EtoForms&version=1.0.0                

GenericParameterCollection.EtoForms

This provides controls for using GenericParameterCollection in the GUI Eto.Forms.

Main features/controls

ParameterCollectionPanel

This is a control based on Eto.Forms Panel-class. This is the main control that handles editing a given ParameterCollection object.

Methods

Here is a list of some interesting methods.

GetParameters()

Call this when you want to get the updated parameters back. This creates a new ParameterCollection-object with all custom converters and other information copied from the original ParameterCollection-object.

ParameterCollectionDialog

This is a dialog that implements the ParameterCollectionPanel and a button to submit and a button to cancel. See this example for how to use this (the variable parameterCollection contains the ParameterCollection):

var dialog = new ParameterCollectionDialog(parameterCollection);
var value = dialog.ShowModal();
if (value != null)
{
	// Submit/OK-button was clicked. The value-variable contains the updated ParameterCollection.
}

Options

The controls let you provide a ParameterCollectionPanelOptions. Here you can define some customisation of how the control looks and works. Most are both self explanatory and well documented in code. Some of theese options can also for a specific parameter if the option AdditionalInfoWillOverride is set to true (default is true). Then one or more of the given parameters below be given in a parameters additionalInfo.

Define options from a ParameterCollection

If you define this in a ParameterCollection-ParameterType, the changes will affect all parameters in that ParameterCollection.

Mark that it exist multiple parameters that currently can not be defined in a ParameterCollection. This must be defined in the object directly, and can't be changed via a ParameterCollection. This list only contains the parameters that can be changed.

Parameter key Type Description Default value in option-class
humanReadable Bool Change if the parameter-key should be tried to be written more human readable True
readOnly Bool If true, the control that shows the parameters value should be read only/disabled False
increment Double Defines how much a number (int, float, double, long) should increment/decrement with if the increment/decrement buttons are used if int, 1, if a decimal-number (float, double or long), 0.1
incrementInt Int Defines how much an int-value should be incremented (this will only apply to Int-parameters) 1
incrementDecimal Double Defines how much a decimal-value (float, double or long) should be incremented (this will only apply to decimal-parameters (float, double or long)) 0.1
decimalPlaces Int How many decimal-places that should be shown 2
minDate DateTime What should be the lowest date that can be selected DateTime.MinDate
maxDate DateTime What should be the highest date that can be selected DateTime.MaxValue
enumSelection Enum Define what control should be used for enums (valid values are "DropDown", "ComboBox", "GridView") DropDown
singleSelection Enum Define what control should be used for selecting a single value from a list (valid values are "DropDown", "ComboBox", "GridView") DropDown
comboBoxReadOnly Bool If true the value in the textbox in a combobox can not be changed manually (you need to find the value in the list) True
dateTimeFormat String Define how the DateTime should be formatted when converted to a string (for ParameterType.DateTime) g
dateFormat String Define how the DateTime should be formatted when converted to a string (for ParameterType.Date) d
Product Compatible and additional computed target framework versions.
.NET net5.0 was computed.  net5.0-windows was computed.  net6.0 was computed.  net6.0-android was computed.  net6.0-ios was computed.  net6.0-maccatalyst was computed.  net6.0-macos was computed.  net6.0-tvos was computed.  net6.0-windows was computed.  net7.0 was computed.  net7.0-android was computed.  net7.0-ios was computed.  net7.0-maccatalyst was computed.  net7.0-macos was computed.  net7.0-tvos was computed.  net7.0-windows was computed.  net8.0 was computed.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed. 
.NET Core netcoreapp2.0 was computed.  netcoreapp2.1 was computed.  netcoreapp2.2 was computed.  netcoreapp3.0 was computed.  netcoreapp3.1 was computed. 
.NET Standard netstandard2.0 is compatible.  netstandard2.1 was computed. 
.NET Framework net461 was computed.  net462 was computed.  net463 was computed.  net47 was computed.  net471 was computed.  net472 was computed.  net48 was computed.  net481 was computed. 
MonoAndroid monoandroid was computed. 
MonoMac monomac was computed. 
MonoTouch monotouch was computed. 
Tizen tizen40 was computed.  tizen60 was computed. 
Xamarin.iOS xamarinios was computed. 
Xamarin.Mac xamarinmac was computed. 
Xamarin.TVOS xamarintvos was computed. 
Xamarin.WatchOS xamarinwatchos 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.1.1 137 2/18/2024
1.1.0 110 2/4/2024
1.1.0-beta02 159 10/29/2023
1.1.0-beta01 131 4/9/2023
1.0.1 202 4/8/2023
1.0.0 186 4/3/2023

Version 1.0.0:
       - Initial release of a working version