/// <summary>
    /// Removes category bindings assigned to SKU.
    /// </summary>
    /// <param name="categoryIDs">ID of categories which should be removed</param>
    /// <returns>Returns true if some category binding was removed.</returns>
    private bool RemoveSKUCategoryBindings(IEnumerable <int> categoryIDs)
    {
        var ids = categoryIDs.ToList();

        var variantCategoryIDs = VariantHelper.GetProductVariantsCategoryIDs(ProductID);

        var categoryIDsToRemove = ids.Except(variantCategoryIDs).ToList();

        foreach (var id in categoryIDsToRemove)
        {
            ProductHelper.RemoveOptionCategory(ProductID, id);
        }

        // Categories are already used in variants -> they cannot be removed
        if (ids.Except(categoryIDsToRemove).Any())
        {
            ShowWarning(GetString("com.optioncategory.remove"));
        }

        return(categoryIDsToRemove.Any());
    }