ookii-dialogs / ookii-dialogs-winforms Goto Github PK
View Code? Open in Web Editor NEWAwesome dialogs for Windows Desktop applications built with Microsoft .NET (WinForms)
License: BSD 3-Clause "New" or "Revised" License
Awesome dialogs for Windows Desktop applications built with Microsoft .NET (WinForms)
License: BSD 3-Clause "New" or "Revised" License
Cake 2.0.0 has been released 🎉
.NET 4.6.1 EoL is April 2022 and Visual Studio 2022 no longer installs it by default.
As part of adding support for .NET Core 3.1, make sure to embed the XPThemes.manifest
in the assembly to resolve the P/Invoke issue with comctl32.dll
.
hello guys how to show warning message in credential dialog ?
我看到你是这样的描述的:(I saw your upgrade report)
#47 (.NET 4.6.1 EoL is April 2022 and Visual Studio 2022 no longer installs it by default.)
我们的用户使用win7系统非常多,所以我们需要对低版本net的一个支持(There are many users of Windows 7,So we need to support lower versions of NET)
辛苦作者,谢谢。(thank)
Port enhancement added to Ookii.Dialogs.Wpf via ookii-dialogs/ookii-dialogs-wpf#36
Hi,
Do you know if it's possible to start a progressBar with ProgressBarStyle = ProgressBarStyle.MarqueeProgressBar, and change later (after the number of iterations is known) to ProgressBarStyle = ProgressBarStyle.ProgressBar with percentage.
When I try, no exception is raised but the ProgressBarStyle seems locked after initialization.
Thanks
Hello,
Can you please at a DLL package in addition of nuget into the releases ?
I think it would be great in case (as mine) where you need to call DLL's outside Visual studio (such as Streamer.Bot or any tool that has a C# embded compiler).
Best regards
Can you replace windows default dialog with this ??
The API supports FOS_ALLOWMULTISELECT
but an option to set it is not exposed in the VistaFolderBrowserDialog
As described in ookii-dialogs/ookii-dialogs-wpf#48
I'm trying to figure out how the Task Dialog works, but I don't know how to create a button since the example just assumes you do, and nothing online uses WinForms.
...
Port enhancement added to Ookii.Dialogs.Wpf via ookii-dialogs/ookii-dialogs-wpf#40
InputDialog multiline TextBox is needed
The screenshot in the readme shows that I can use a hyperlinks. But how? Do I need to use some syntax?
readme.md seems to have not much info about this class library, just the description. Is there any documentation for this library anywhere? The documentation here is not accessible
I know this isn't the typical use-case of Ookii Dialogs Winforms, but I've had great success using all of the other dialog types in Powershell 7 by loading the assembly in my module and instantiating the various dialog classes. Input Dialog, Password Dialog, and Task Dialog all work great.
Unfortunately, I'm having some trouble diagnosing why the Ookii.Dialogs.WinForms.ProgressDialog
is causing Powershell to explode.
Here is a simple repro script:
$Pdialog = [Ookii.Dialogs.WinForms.ProgressDialog]::new()
$Pdialog.Description = "Cropping SVGs..."
$Pdialog.ShowTimeRemaining = $false
$Pdialog.Text = "Cropping all queued SVGs..."
$Pdialog.WindowTitle = "SVG Crop"
$Pdialog.ProgressBarStyle = 'Marquee'
# Show the dialog
$Pdialog.Show()
Immediately when $Pdialog.Show()
is called, Powershell hard terminates with the following error:
An error has occurred that was not properly handled. Additional information is shown below. The PowerShell process will exit.
Unhandled exception. System.InvalidCastException: Unable to cast COM object of type 'Ookii.Dialogs.WinForms.Interop.ProgressDialogRCW'
to interface type 'Ookii.Dialogs.WinForms.Interop.IProgressDialog'. This operation failed because the QueryInterface call on the COM
component for the interface with IID '{EBBC7C04-315E-11D2-B62F-006097DF5BD4}' failed due to the following error:
No such interface supported (0x80004002 (E_NOINTERFACE)).
at System.StubHelpers.StubHelpers.GetCOMIPFromRCW(Object objSrc, IntPtr pCPCMD, IntPtr& ppTarget, Boolean& pfNeedsRelease)
at Ookii.Dialogs.WinForms.Interop.IProgressDialog.StopProgressDialog()
at Ookii.Dialogs.WinForms.ProgressDialog._backgroundWorker_RunWorkerCompleted(Object sender, RunWorkerCompletedEventArgs e)
in D:\a\ookii-dialogs-winforms\ookii-dialogs-winforms\src\Ookii.Dialogs.WinForms\ProgressDialog.cs:line 774
at System.Threading.ExecutionContext.RunForThreadPoolUnsafe[TState](ExecutionContext executionContext, Action'1 callback, TState& state)
at System.Threading.QueueUserWorkItemCallback'1.Execute()
at System.Threading.ThreadPoolWorkQueue.Dispatch()
at System.Threading.PortableThreadPool.WorkerThread.WorkerThreadStart()
I will be the first to admit, I have absolutely NO idea what the error message above means.
I did some google-fu, and found here that the CLSID {EBBC7C04-315E-11d2-B62F-006097DF5BD4}
is related to the IProgressDialog
interface.
The error message above reports that the casting of Ookii.Dialogs.WinForms.Interop.ProgressDialogRCW
to IProgressDialog
fails because, well, this: No such interface supported (0x80004002 (E_NOINTERFACE)).
.
No idea how to remedy this.
In one of my scripts I actually did get the Progress Dialog to work. The script was utilizing a standard winforms form, and I created the Progress Dialog instance and called its Show()
method after a button click event.
All of my other scripts fail to show the dialog and crash Powershell.
I am really hoping you could shed some light on what the error message above means, and how I can fix the problem. I really like having the visual feedback in my scripts, and your dialogs are both highly polished and appear native to the OS.
Any help greatly appreciated!
And thank you for creating a great library.
From your main winforms page on https://github.com/ookii-dialogs/ookii-dialogs-winforms ....
Quote:
The included sample application Ookii.Dialogs.WinForms.Sample demonstrate the dialogs for Windows Forms. View the source of this application to see how to use the dialogs.
Unquote
The link (https://github.com/ookii-dialogs/ookii-dialogs-winforms/blob/master/sample/Ookii.Dialogs.WinForms.Sample) does not resolve.
Relates to ookii-dialogs/ookii-dialogs-wpf#28
Now that we are using the SDK-style with multi-targeting and and have a good build pipeline setup, it would be easy to generate separate NuGet packages for each of the dialogs, so that developers can have the option to cherry-pick only the dialogs they want to use in their application.
Ookii.Dialogs.WinForms.nupkg
, depends on:
Ookii.Dialogs.WinForms.TaskDialog.nupkg
, depends on:
Ookii.Dialogs.WinForms.Core.nupkg
, depends on:
Ookii.Dialogs.Core.nupkg
(no dependencies)Ookii.Dialogs.WinForms.ProgressDialog.nupkg
, depends on:
Ookii.Dialogs.WinForms.Core.nupkg
, depends on:
Ookii.Dialogs.Core.nupkg
(no dependencies)Ookii.Dialogs.WinForms.CredentialDialog.nupkg
, depends on:
Ookii.Dialogs.WinForms.Core.nupkg
, depends on:
Ookii.Dialogs.Core.nupkg
(no dependencies)Ookii.Dialogs.WinForms.FolderBrowserDialog.nupkg
, depends on:
Ookii.Dialogs.WinForms.Core.nupkg
, depends on:
Ookii.Dialogs.Core.nupkg
(no dependencies)Ookii.Dialogs.WinForms.OpenFileDialog.nupkg
, depends on:
Ookii.Dialogs.WinForms.Core.nupkg
, depends on:
Ookii.Dialogs.Core.nupkg
(no dependencies)Ookii.Dialogs.WinForms.SaveFileDialog.nupkg
, depends on:
Ookii.Dialogs.WinForms.Core.nupkg
, depends on:
Ookii.Dialogs.Core.nupkg
(no dependencies)Ookii.Dialogs.WinForms.InputDialog.nupkg
, depends on:
Ookii.Dialogs.WinForms.Core.nupkg
, depends on:
Ookii.Dialogs.Core.nupkg
(no dependencies)I'm assuming we'll have to create a Ookii.Dialogs.WinForms.Core
package to share common WinForms code between the different WinForms dialog packages, as well as a Ookii.Dialogs.Core
package to share common code across both the WinForms and WPF packages (#9).
Turning Ookii.Dialogs.WinForms
into a meta package that depends on all other micro packages will provide the same experience that users have today where they'll get all the dialogs with one package.
.NET 7 has been released 🎉
Ensure feature parity with the Ookii.Dialogs.Wpf v1.2.0 release.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.