public DirectInputBinding(string callback, int povHatNumber, CallbackInvocationBehavior callbackInvocationBehavior,
                                  PovDirections povDirection, int soundId, string description = null)
        {
            Callback = callback != null?callback.Trim() : null;

            POVHatNumber = povHatNumber;
            BindingType  = DirectInputBindingType.POVDirection;
            CallbackInvocationBehavior = callbackInvocationBehavior;
            PovDirection = povDirection;
            SoundId      = soundId;
            Description  = description;
        }
        public DirectInputBinding(string callback, int buttonIndex, CallbackInvocationBehavior callbackInvocationBehavior, TriggeringEvent triggeringEvent, int soundId, string description = null)
        {
            Callback = callback != null?callback.Trim() : null;

            ButtonIndex = buttonIndex;
            CallbackInvocationBehavior = callbackInvocationBehavior;
            BindingType     = DirectInputBindingType.Button;
            PovDirection    = PovDirections.None;
            TriggeringEvent = triggeringEvent;
            SoundId         = soundId;
            Description     = description;
        }