How to delete missing element from my list

so i made some inventory manager for my game, it works fine , but if i spam button for open up an inventory , an null object spawn in my Inventory items list , how to delete this null object

my inventory script :

public class InventoryManager : MonoBehaviour
{
    public Transform ItemContent;
    public GameObject InventoryItem;

    public static InventoryManager Instance;
    public List<Item> Items = new List<Item> ();

    public Toggle EnableRemove;

    public InventoryItemController[] InventoryItems;

    public HealthSystem healthSystem;
    private void Awake()
    {
        Instance = this;
        
    }

    public void Add(Item item)
    {
        Items.Add(item);
    }

    public void Remove(Item item)
    {
        Items.Remove(item);
    }

    public void ListItems()
    {
        //clean item before open
        foreach (Transform item in ItemContent)
        {
            Destroy(item.gameObject);
        }
        foreach (var item in Items)
        {
            GameObject obj = Instantiate(InventoryItem, ItemContent);
            var itemName = obj.transform.Find("ItemName").GetComponent<TextMeshProUGUI>();
            var itemIcon = obj.transform.Find("ItemIcon").GetComponent<Image>();
            var removeButton = obj.transform.Find("RemoveButton").GetComponent<Button>();

            itemName.text = item.itemName;
            itemIcon.sprite = item.icon;

            if (EnableRemove.isOn)
            {
                removeButton.gameObject.SetActive(true);
            }

            
        }

        SetInventoryItems();
    }

    public void EnableItemsRemove()
    {
        if (EnableRemove.isOn)
        {
            foreach (Transform item in ItemContent)
            {
                item.Find("RemoveButton").gameObject.SetActive(true);
            }
        }
        else
        {
            foreach (Transform item in ItemContent)
            {
                item.Find("RemoveButton").gameObject.SetActive(false);
            }
        }
    }

    public void SetInventoryItems()
    {
        InventoryItems = ItemContent.GetComponentsInChildren<InventoryItemController>();

        for (int i = 0; i < Items.Count; i++)
        {
            InventoryItems_.AddItem(Items*);*_

}
}
}

when i said null object , i mean this thing
[1]
[1]: Test.mp4 - Google Drive

You can simple check if item.gameObject == null, If its null them remove the item from list.
Here is example:

    void CheckItemExistOrNot()
    {
        for(int i = 0; i < Items.Count; i++)
        {
           if(Items*.gameObject == null)*

{
Items.RemoveAt(i);
}
}
}