This is because drive can only be extended to the left.. the resulting drive must be contiguous on your disk. You cannot extend by leapfrogging over a space that is already taken with another partition!
There is a (somewhat tedious) workaround which involves no additional software, in which I am assuming:
a) Your C drive is the Operating (booting) drive, and is in the leftmost position.
b) You have only files in the other partitions, ie not whole operating systems.
c) You have significant free space on your drive to play with and no rediculously sized files that fill entire drives.
What you need to do essentially is move the unallocated space over to the right hand side of the drive you want to extend. The extend option will then be available.
To do this, you need to shrink the partition that is currently there down to the size you wish to extend by, and then MOVE THE DATA IN IT ESLEWHERE! This is the tedious part.
You can then delete the empty partition and extend the C drive into the unallocated space.
Similar shrink, copy, paste, extend operations can be carried out to get the remaining drives where you want them. Labourious, yes, but worth it to get your structure the way you want. Reminds me a bit of the old Tower of Hanoi game you used to see on mobile phones in the old days...
Word of caution: you may need to move the recovery partition and I am not sure whether the result will still work. Windows 8 is pretty good at working out these issues though, and you can always wipe and re-make the recovery.
Oh, and one last point: Measure twice, cut once!