I've recently changed from tinned beans to dried in my mixed bean chilli, which I slow cook. White (cannellini or black eyed) beans stay fairly white if starting from tinned, but dried beans absorb some colour in soaking/cooking. This is reduced by soaking the kidney beans separately (it makes it easier to boil them hard to remove phytohemagglutinin) and would be further reduced by soaking and pre-cooking the white beans on their own (as demonstrated by the tinned.
To minimise the darkening you need to minimise the amount of coloured liquid they absorb. This means minimising the time they spend in contact with the sauce, and making sure they're fully hydrated when added. Cooking then completely separately and stirring them in just before serving is the obvious end point. I wouldn't consider that myself, preferring to optimise for flavour, energy consumption, and effort over a minor aspect of appearance, but I rarely serve it to others, and when I do they're too hungry to care! All of this means starting with separate beans. I find them much cheaper that way anyway.