public TaskDialog()
        {
            config        = new TASKDIALOGCONFIG();
            config.cbSize = Marshal.SizeOf <TASKDIALOGCONFIG>();

            _StaticCallbackDelegate callback = StaticCallback;

            config.pfCallback = Marshal.GetFunctionPointerForDelegate(callback);

            buttons      = new List <TaskDialogButton>();
            radioButtons = new List <TaskDialogButton>();
        }
 public static extern int TaskDialogIndirect(
     ref TASKDIALOGCONFIG pTaskConfig,
     out int pnButton,
     out int pnRadioButton,
     out int pfVerificationFlagChecked
     );