I want to print in white ink on black paper. I have a Canon MX310 printer
Inkjet printer inks are dye-based, and that's the reason.
Perhaps this will help explain things. You know those little boxes of food colouring you can buy in the supermarket - the ones that have four little bottles of colour - red, blue, yellow and green. Within reason you can combine these to turn white icing into most colours. Use nothing and the icing is still white or use everything and the icing will go a black-brown colour. Use a couple of drops of red and blue and you'll get purple.
But if you start with black icing, there's nothing you can add that will make it anything but black.
It's the same with your inkjet printer - because white is obtained by not having any ink print on the white paper. But of course that only works when the paper is white. Naturally you'll get different results on all colours of paper, decreasing as the paper gets darker in colour. Print blue on yellow paper and you should get green printing.
The only way to print in white is to do what commercial printers do - use opaque inks and include a white ink in the process. And as far as I know there's no commercial ink that will do that with an inkjet printer.
I can hear lots of you muttering "Rubbish. Of course you can print light colours on dark paper." Well all I can say is, have fun experimenting, but you won't be able to do it.
About the only way to achieve the sort of result you may be after is to print the job then trim it and paste it in place. For instance, if you want to print onto a black or dark-coloured T-shirt then print onto white transfer material, trim the print to size and iron it in place.