添加引用
using System.Runtime.InteropServices;
导入dll
[DllImport("comctl32.dll", PreserveSig = false, CharSet = CharSet.Unicode)]
static extern TaskDialogResult TaskDialog(IntPtr hwndParent, IntPtr hInstance, string title,
string mainInstuction, string content, TaskDialogButtons buttons, TaskDialogIcon icon);
[Flags]
public enum TaskDialogResult
{
None = 0,
OK = 1,
Cancel = 2,
Retry = 4,
Yes = 6,
No = 7,
Close = 8,
Command = 20,
Custom = 21
}
public enum TaskDialogIcon
{
Warning = 65535,
Error = 65534,
Information = 65533,
Shield = 65532
}
public enum TaskDialogButtons
{
OK = 0x0001,
Yes = 0x0002,
No = 0x0004,
Cancel = 0x0008,
Retry = 0x0010,
Close = 0x0020
}
调用taskdialog
TaskDialogResult result = TaskDialog(new System.Windows.Interop.WindowInteropHelper(this).Handle,
IntPtr.Zero, "Task Dialog", "This is a task dialog.", "Do you like it?", TaskDialogButtons.Yes |
TaskDialogButtons.No, TaskDialogIcon.Warning);
设置属性
- 在项目属性中点击“安全”,选中“启用ClickOnce安全设置”
- 打开app.manifest
- 激活下面代码
<dependency> <dependentAssembly> <assemblyIdentity type="win32" name="Microsoft.Windows.Common-Controls" version="6.0.0.0" processorArchitecture="*" publicKeyToken="6595b64144ccf1df" language="*" /> </dependentAssembly> </dependency>
4. 在项目属性中点击“安全”,取消“启用ClickOnce安全设置”