protected override void AfterSpawn()
    {
        if (parentMenu == null)
        {
            parentMenu = GetComponentInParent <InventoryMenu>();
        }
        Debug.Assert(parentMenu != null);

        InventorySlotUI inventorySlotUi = SpawnedInstance.GetComponent <InventorySlotUI>();

        switch (slotType)
        {
        case SpawnedSlotType.Inventory:
            inventorySlotUi.Initialize(parentMenu, new InventoryMenu.ItemSlotID(CurrentInstanceId));
            break;

        case SpawnedSlotType.Equipment:
            inventorySlotUi.Initialize(parentMenu, new InventoryMenu.ItemSlotID(eqSlotOrder[CurrentInstanceId]), eqSlotNames[CurrentInstanceId]);
            break;
        }
    }