This process is very easy. Obviously I'll be using a Linux host, but the process should be the same for a windows host.
Windows Guest:
First thing is to detach the vdi from the VM we wish to expand.
Open the VirtualBox Manager GUI.
Open the settings for the VM to modify.
Click Storage on the left
Right click the VDI to change and select Remove Attachment.
Now open a terminal and enter the following command (change for your details)
VBoxManage modifymedium "/path/to/win10/win10.vdi" --resize 50000
(The resize value is in MB)
As soon as you press enter, the vdi will be expanded.
Now re-attach the vdi to the VM
Open the settings for the VM to modify.
Click Storage on the left
Right click on the Controller and select Add Hard Disk
Then Choose existing disk
Browse to the VDI file.
Now we need to configure windows to use the new space.
Start up the VM.
Right click on the Start button and select Disk Management
Right click on the drive you want to expand and select Extend Volume.
Click Next a few times.
Done. That's it!