If there's even a question about a bang-bang play, it should be a block, not a charge. No one wants to watch guys run to spots and fall down. It may not violate the letter of the law but it sure as hell violates the spirit of it. Basketball is supposed to be entertainment - if everyone starts cheating in order to win, it ruins the flow of the game and the spirit of the action.
Can you imagine a guy trying to win a pick-up game by taking a charge? It's absurd - get up off the ground and play basketball. If you want to win a game, you must make basketball plays to do it.
A charge is when you are standing still, the other play is out of control and he runs directly into you. That's the only time that play should be called. If you are playing 1-on-1 defense and you are sliding, you should not be taking charges.
As a big man, I could elbow a guy in the kidneys every time there's a scrum for a rebound and it wouldn't get called against me. That would help my team win, so why shouldn't I do it? The answer is that basketball is a gentleman's sport and there are certain thing everyone agrees to do beforehand in order to make it a fun thing to do and to watch.
Jordan Morgan cheated, deceived the ref and made the game-winning play for Michigan. There is no justice in this world.