GithubHelp home page GithubHelp logo

krypton-suite / extended-toolkit Goto Github PK

View Code? Open in Web Editor NEW
173.0 11.0 29.0 43.72 MB

A companion toolkit for the standard toolkit.

License: MIT License

C# 99.87% HTML 0.01% Batchfile 0.11% Smalltalk 0.01% JavaScript 0.01%
nuget theme dll krypton-outlook-grid colour-palette colours krypton nuget-packages extended-tookit winforms

extended-toolkit's Introduction

Extended Toolkit

=======

NuGet Information

Version information

=======

Supporters

Development of the Krypton Extended Toolkit is supported by these generous organisations:

JetBrains provides cutting-edge IDE and developer productivity tools. YourKit provides a market-leading intelligent Java Profiler and .NET Profiler.

=======

Documentation

Download the extended toolkit documentation installer

Examples

Browse toolkit examples

Version Information

Version Information

Version History

Extended Toolkit Changelog

Support Information

Package Support Information

Enabling preview SDK usage

If you want to try out the latest .NET SDK (currently .NET 8), but just have the stable version of Visual Studio installed, please read this article.

=======

Install the Ultimate Package

Note: These packages do not support anything newer than .NET Framework 4.8.1.

Full

Package Manager

PM> NuGet\Install-Package Krypton.Toolkit.Suite.Extended.Ultimate -Version 70.22.11.312

Package Reference

<PackageReference Include="Krypton.Toolkit.Suite.Extended.Ultimate" Version="70.22.11.312" />

Lite

PM> NuGet\Install-Package Krypton.Toolkit.Suite.Extended.Ultimate.Lite -Version 70.22.11.312

Package Reference

<PackageReference Include="Krypton.Toolkit.Suite.Extended.Ultimate.Lite" Version="70.22.11.312" />

=======

Modules

Main Modules

Module Name Description Example Image
Advanced Data Grid View This package implements the advanced data grid view controls.
Buttons This package holds extensions to the standard KryptonButton controls.
Calendar This package implements a KryptonCalendar control. 2
CheckSum Tools This package holds utilities to compute and verify checksums. 3
Circular Progress Bar This package holds the circular progressbar control.
ComboBox This package implements extensions to the Krypton standard toolkit ComboBox, including additional Drop Down types and views. 5
Compression This package holds additional file compression utilities. 6
Controls This package holds numerous controls that complement the standard toolkit.
Data Visualisation This package implements charts, graphs and other additional data visualisation tools. 8
Data Grid View This package implements additional extensions to the Krypton standard toolkit DataGridView, including Column types and Master-Detail views.
Dialogs This package implements additional extensions to standard dialogs. 10
Dock Extender This package implements additional docking operations. (Under Development) 11
Drawing Utilities This package implements additional drawing utilities. 12
Error Reporting This package implements error reporting features. 13
Fast Coloured TextBox This package implements the FastColouredTextBox control. 14
File Copier This package provides tools to move and copy files. 15
File Explorer This package implements a file explorer. (Under Development) 16
Floating Toolbars This package allows the usage of floating toolbars.
Forms This package implements additional KryptonForm effects, to be used in conjunction with the standard toolkit. 18
Gages This package implements additional gage controls. (Under Development) 19
Input Box This package implements a input box dialog. 20
IO This package implements IO controls and features. 21
Memory Box This package implements a memory box dialog.
Message Box This package implements additional KryptonMessageBox features and functionality. 23
Navi Suite This package implements the 'NaviSuite' control. 24
Navigator This package implements additional KryptonNavigator designs and features. 25
Networking This package implements networking features. 26
Notifications This package implements items to create notifications for your applications. 27
Outlook Grid This package implements the 'OutlookGrid' control. 28
Palette Selectors This package implements palette creation tools. (Under Development) 29
Panel This package implements extra 'KryptonPanel' features and functionality. (Under Development) 30
Ribbon This package implements extra 'KryptonRibbon' features and functionality. 31
Software Updater This package implements software updating features. 32
Specialised Dialogs This package implements system dialogs, using the Krypton themes. 33
Task Dialogs This package implements extra 'KryptonTaskDialog' features and functionality. 34
Theme Switcher This package implements a easy to use theme switcher.
Themes This package implements theme utilities for use with KryptonFormExtended. 36
Toast This package contains a framework that allows the creation of toast notifications. 37
Toggle Switch This package implements toggle switch controls. (Under Development) 38
Tool Box This package implements a Visual Studio toolbox control. 39
Tool Strip Items This package implements additional tool strip items. 40
Tree Grid View This package implements items to create tree grid views for your applications.
Virtual Tree Column View This package implements items to create a 'virtual tree column view' for your applications.
Wizard This package implements a wizard control.

Note: Some packages may install third-party libraries in order to make them function correctly.

extended-toolkit's People

Contributors

smurf-iv avatar wagnerp avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

extended-toolkit's Issues

[Question]: Why does the Outlook Grid module have so many dependencies?

Hello and thanks for the great work,

So, I've been using the original Krypton Suite (v4.5) for a while (or v4.4.1 from this fork for when I need to use the OutlookGrid). I've recently switched to the newer versions of the Standard Toolkit for High DPI support and it's been working fine with little tweaks.

Now, I would like to use the OutlookGrid again. So, I tried getting it from this NuGet package but its dependencies include Krypton.Toolkit.Canary (why Canary?) and Krypton.Toolkit.Suite.Extended.Dialogs (which has many other dependencies). So, I end up with a lot of packages that I don't need (I only use Krypton.Toolkit and Krypton.Navigator):

<packages>
  <package id="CommandLineParser" version="2.8.0" targetFramework="net472" />
  <package id="Cyotek.Windows.Forms.ColorPicker" version="1.7.2" targetFramework="net472" />
  <package id="EasyScintilla" version="1.0.5" targetFramework="net472" />
  <package id="jacobslusser.ScintillaNET" version="3.6.3" targetFramework="net472" />
  <package id="Krypton.Docking.Canary" version="6.0.2008" targetFramework="net472" />
  <package id="Krypton.Navigator.Canary" version="6.0.2008" targetFramework="net472" />
  <package id="Krypton.Ribbon.Canary" version="6.0.2008" targetFramework="net472" />
  <package id="Krypton.Toolkit.Canary" version="6.0.2008" targetFramework="net472" />
  <package id="Krypton.Toolkit.Suite.Extended.Base" version="5.550.2010" targetFramework="net472" />
  <package id="Krypton.Toolkit.Suite.Extended.Common" version="5.550.2010" targetFramework="net472" />
  <package id="Krypton.Toolkit.Suite.Extended.Core" version="5.550.2010" targetFramework="net472" />
  <package id="Krypton.Toolkit.Suite.Extended.Dialogs" version="5.550.2010" targetFramework="net472" />
  <package id="Krypton.Toolkit.Suite.Extended.Drawing.Suite" version="5.550.2010" targetFramework="net472" />
  <package id="Krypton.Toolkit.Suite.Extended.Global.Utilities" version="5.550.2010" targetFramework="net472" />
  <package id="Krypton.Toolkit.Suite.Extended.Language.Model" version="5.550.2010" targetFramework="net472" />
  <package id="Krypton.Toolkit.Suite.Extended.Outlook.Grid" version="5.550.2010" targetFramework="net472" />
  <package id="Krypton.Toolkit.Suite.Extended.Palette.Controls" version="5.550.2010" targetFramework="net472" />
  <package id="Krypton.Toolkit.Suite.Extended.Settings" version="5.550.2010" targetFramework="net472" />
  <package id="Krypton.Toolkit.Suite.Extended.Standard.Controls" version="5.550.2010" targetFramework="net472" />
  <package id="Krypton.Toolkit.Suite.Extended.Utilities" version="5.550.2010" targetFramework="net472" />
  <package id="Krypton.Workspace.Canary" version="6.0.2008" targetFramework="net472" />
  <package id="Microsoft.VisualBasic" version="10.3.0" targetFramework="net472" />
  <package id="System.Management" version="4.7.0" targetFramework="net472" />
  <package id="System.Runtime" version="4.3.1" targetFramework="net472" />
  <package id="System.Text.RegularExpressions" version="4.3.1" targetFramework="net472" />
  <package id="WindowsAPICodePack" version="1.1.1" targetFramework="net472" />
</packages>

So, is there a version of the OutlookGrid that doesn't require all those dependencies?

Also, to be honest, I'm not so confident in the Extended-Toolkit as I found many glitches when I tried to test some of its controls. So, I'd like to stick with the Standard-Toolkit and add the OutlookGrid module to it, if possible.

Thank you!

[Discussion]: As part of V6, can the modules be broken down into smaller units, and also remove duplication?

I know.. This will lead to "Breaking changes", but as it is a new version then these are allowed ;-)

For example.. Create a dll that only has MessageBox extensions in it.
Reason.. I do not want to download Scintilla and other third party libraries just to have a MessageBox with a timeout on it !

Another example.. Rounded controls: The base of these appear to be in at least 2 different places with also "research" code still splatted all over the place.

Note: Research code should be in a separate place and not part of the shipped NuGet dll(s)

[Feature Request]: Fully functional Nested (Master-Detail) DataGrid

[Other Issues]: Nice to Haves

ToolTip / BalloonTip Links:

Enhanced progress bar

Misc:

[Feature Request]: KryptonTextBox with Icon

Hi @Wagnerp

Is it possible to implement an icon in TextBox.
At the moment I use ButtonSpecs for that. I wish I can set an Icon-Image on the left side in a TextBox to show the user, that his entry is correct or incorrect like web apps with ajax validation check.

Example from Google Images
grafik

nuget Packaging Issue

I'm using nuget from Visual Studio 2019
My project is .NET Framework 4.7.2
It's literally a New Project, no code or Forms have been modified.
I'm attempting to add all of the "Krypton.Toolkit.Suite.Extended.*" packages.
I am unable to add the "Krypton.Toolkit.Suite.Extended.Dialogs" package, the error is "Unable to resolve dependency 'Krypton.Toolkit.Suite.Extended.Palette.Controls'. Source(s) used: 'nuget.org', 'Microsoft Visual Studio Offline Packages'."

I think the reason for this error is that the package is called "Krypton.Toolkit.Suite.Extended.Palette.Controller" the difference being Controls and Controller.
Thanks!

Missing controls

As you told me, please find below some controls that i don't find in the new package.
Below is the old references:

ExtendedControls.ExtendedToolkit.Controls.KryptonBorderedLabel() - Completed (see v6)
ExtendedControls.ExtendedToolkit.Controls.KryptonToastNotificationPopup() - Completed (Been renamed)
ExtendedControls.ExtendedToolkit.Controls.KryptonControls.KryptonMarqueeLabel() - Completed (see v6)
Krypton.Toolkit.Extended.Common.ExtendedControls.ExtendedToolkit.Controls.Navigator.Controls.KryptonTabPage - Completed (see v6)
ExtendedControls.ExtendedToolkit.Controls.Navigator.Controls.Alternative.KryptonTabControl - Completed (see v6)
ExtendedControls.ExtendedToolkit.Controls.Navigator.Controls.KryptonTabPage - Completed (see v6)
ExtendedControls.ExtendedToolkit.Controls.KryptonControls.KryptonMonthCalendar()
ExtendedControls.ExtendedToolkit.Controls.KryptonToastNotificationPopup - See point 2
ExtendedControls.ExtendedToolkit.Controls.KryptonControls.KryptonComboBox - Completed (see v6)

Regards

[Bug]: Alert.ShowMessage should be within the bounds of the parent application

Describe the bug
Call Alert.Showmessage on a small app in the top left of a 4K monitor, and the Message pop's up in the bottom right, and will go un-noticed (Especially if this is an rdp scrolling client view)

Expected behavior
The ShowMessage should be within the bounds of the parent application, and should also take (optionally) the parent control hWnd, to "tighten" the control bounds (And ownership!)

[Feature Request]: Expose the OutlookGrid.Classes.OutlookGridRowComparer2 class

Is your feature request related to a problem? Please describe.
Because of the custom sorting logic of the OutlookGrid, the SortCompare event can no longer be used to override the comparing logic. AFAICT looking at the source, the only alternative would be to change the logic or the IComparer that is used for sorting the internalRows list. However, it's currently hardcoded to OutlookGridRowComparer2, which is internal so it can't be inherited.

Describe the solution you'd like
There are two possible (similar) solutions I can think of:

  1. Simply expose the OutlookGridRowComparer2 class by making it public (quick & easy change)
  2. Add a RowComparer property of type IComparer<OutlookGridRow> to the grid class so one can provide any custom comparer (arguably better but requires more changes). I can work on a PR if you think this is better but I think option 1 above is good enough.

Describe alternatives you've considered
The only other option I could think of (without modifying the source) is to override the Fill() method altogether but that's a huge overkill to do just for changing the comparer, not to mention that any changes to the original Fill() method would need to be manually added after each update.

Additional context
I'm aware that there's the option to change OutlookGridColumn.GroupingType.ItemsComparer. However, that's only useful when one merely needs to compare two values without any additional context. You can't access the values of other cells or get the underlying object bound to the row, for example.

If you think there's a better solution, please let me know. Thank you!

OutlookGrid Column right click causes error

Hi,

Looks like you have bug in Outlook Grid component.
Right click on column header will cause the following error:

{"Could not find any resources appropriate for the specified culture or the neutral culture. Make sure \"KryptonOutlookGrid.Utilities.Language.EnglishStringsGB.resources\" was correctly embedded or linked into assembly \"Krypton.Toolkit.Suite.Extended.Outlook.Grid\" at compile time, or that all the satellite assemblies required are loadable and fully signed."}

Looks like changing :
resourceManagerUS = new ResourceManager("KryptonOutlookGrid.Utilities.Language.EnglishStringsUS", Assembly.GetExecutingAssembly()); resourceManagerGB = new ResourceManager("KryptonOutlookGrid.Utilities.Language.EnglishStringsGB", Assembly.GetExecutingAssembly());

into :
resourceManagerUS = new ResourceManager("Krypton.Toolkit.Suite.Extended.Outlook.Grid.Utilities.Language.EnglishStringsUS", Assembly.GetExecutingAssembly()); resourceManagerGB = new ResourceManager("Krypton.Toolkit.Suite.Extended.Outlook.Grid.Utilities.Language.EnglishStringsGB", Assembly.GetExecutingAssembly());

in Krypton.Toolkit.Suite.Extended.Outlook.Grid.LanguageManager class initialization method should solve the issue.
I guess you made some changes to namespaces recently, maybe checking for "namespace orphans" in some text fields should be recommended.

Regards,
Darko

[Bug]: KryptonOutlookGridGroupBox_DragDrop & DragEnter Has no reference

KryptonOutlookGridGroupBox class has the method KryptonOutlookGridGroupBox_DragDrop & DragEnter yet the constructor doesn't attach it to an event. So the whole drag&drop feature of this control doesn't work.

Like:

this.DragDrop += new System.Windows.Forms.DragEventHandler(this.KryptonOutlookGridGroupBox_DragDrop); this.DragEnter += new System.Windows.Forms.DragEventHandler(this.KryptonOutlookGridGroupBox_DragEnter);

Is this intented or a bug?

[Feature Request]: ComboBox with Grouping

Hello everybody,

I hope everyone had a great Easter?
Now a new Feature-Request from me! Is it possible to add a grouping function KryptonComboBox like in this blog:
https://www.brad-smith.info/blog/archives/104

GroupedComboBox

Thanks for all and greetings from Germany,
Danny

Edit(Smurf-IV):
Make this into a ComboBox->Tree, to allow tree branching, checkbox selection and icons (And not a TreeView with ComboBox Nodes!)
https://www.brad-smith.info/blog/archives/477

GroupedComboBoximage

More images here:
https://www.google.com/search?newwindow=1&sxsrf=ALeKk00qjySYwDzpYha6t65M_j54LqtrcA:1618038462903&source=univ&tbm=isch&q=combobox+tree&client=firefox-b-d&sa=X&ved=2ahUKEwj0_sD-jvPvAhX8_7sIHcuTB8UQ7Al6BAgGEBo&biw=1633&bih=933&dpr=1.25

KryptonToggleSwitch applicationSettings problem

Hi @Wagnerp ;

I think i find a malfunction regarding the KryptonToggleSwitch component and the application settings properties.

When i link the isOn propertie to a dedicated setting in my.settings: in fact the link doesnt work.
I precise my setting is well boolean ;-).

I don't test others applications properties because i don't need them so i can't say if there is others bugs.

Regards

[BUG] KryptonStatusStrip - Canary - Build Error

Hi in Krypton Toolkit Stable the StatusStrip will not add to my form it errors so i tried a blank project with Canary Build it adds it which is cool but when I press build and run (Debug) with 6.0.2103.4 it gives debug error for Me.KryptonStatusStrip1 = New Krypton.Toolkit.KryptonStatusStrip() - System.NullReferenceException: 'Object reference not set to an instance of an object.'

[Bug]: Can't add outlook grid group box control

hello,
great stuff, I wonder if I need to force the language to GB or something as EN gives this error as image below.
Also are you're planning to add a filter control as well, perhaps it can be as simple as a filter in the context menu.
what's really nice about this project IMHO is that sometimes we want to share a small app, including source code
and surely use a commercial grid is a show stopper, this is great
image

Need KryptonToastNotificationWindow tuning

Hello,

Just to not forget to tune the KryptonToastNotificationWindow

  1. Be able to change the headertext font, color, location
  2. Be able to change the contenttext font, color, location
  3. doesn't matter how i call it:
    mySuperPopup = New KryptonToastNotificationWindow(True, My.Resources.Alert_icon_32, "Ceci est le titre", "Ceci est le message", 4, True)
    or

mySuperPopup = New KryptonToastNotificationWindow(True, My.Resources.Alert_icon_32, "Ceci est le titre", "Ceci est le message", 4, False)

Maybe it is a bad use of the control. i don't know but the optionButton is always here.

  1. The dismiss button is not well align with the border af the form
    Also it could be interesting to be able to change the text of the button or to link it to the kryptonmanager with a new "Dismiss" paramert

A) B) to be able to manage the color of the background

image

Finally, why not manage this like a kryptonHeaderGroup?
With primary Header for title and IconImage and secondary header for the actionbutton and the dismiss button.

[Other Issues]: Object.ListView should not really be part of this suite

The original source license is GNU GPL, and the author states that if this is used in closed source to contact him.
This is direct contrast to the BSD-3 that Krypton goes under (And is referenced in the license.md file under this project in KSET).
Also the Alpha code base does not build
Also, the part code base that is currently in alpha is old, as the author has updated in 2018 (And the code in KSET is only upto 2015)

https://sourceforge.net/p/objectlistview/code/HEAD/tree/cs/trunk/ObjectListView/

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.