Windows 10 does not make it easy to dual boot. It uses fast start up which really is just hibernation and sets hibernation flag. Grub only boots working Windows and hibernation flag cannot be set. And Windows will keep turning on fast start up with updates. Also when Windows breaks or needs chkdsk, grub will not boot it.
And better to use UEFI as then you can always directly boot Windows from UEFI boot menu.
But with BIOS you have to temporarily restore a Windows boot loader, fix Windows, if you can get to internal repair console, and then restore grub. If you still cannot boot Windows, you have to use your Windows repair flash drive or Windows installer that has a repair console.
Fast start up off.
http://askubuntu.com/questions/843153/ubuntu-16-showing-windows-10-partitions &
Unable to mount Windows (NTFS) filesystem due to hibernation
You will need to always have a Windows repair flash drive & your Ubuntu live installer flash drive to make BIOS type repairs. Good to have if UEFI boot, but not required every time Windows turns on fast start up as you can directly boot in UEFI boot menu.
If Boot-Repair sees the Windows boot partition, it may in advanced mode offer to install a Windows type boot loader - syslinux to MBR. See tab on MBR options. Also boot flag must be on Windows primary NTFS partition with boot files, often a small 100MB partition not otherwise seen in Windows.
https://sourceforge.net/p/boot-repair/home/Home/
In Windows it is the fixMBR command to restore Windows boot loader.
Unable to boot into Windows after installing Ubuntu, how to fix?