Yes, if I had bought, I would probably have stored them in a local wallet. But anyway, they must be on the exchange at least for the necessary time to make trades, which is often more than one thinks as withdrawals tend to take time, etc. And if the hack/scam/etc. hits precisely on the day that you're trading or pending a withdrawal, you're out of luck.
Probably some Bitgrail users were minimizing the time their money was on the exchange, but they were unlucky enough to have it there at the wrong moment.
And anyway, this is not the kind of thing people should need to think about if we want crypto to become mainstream. If I place an order on my bank to buy some shares, I don't need to be thinking that I should go to the bank as soon as possible and request the original paper version of my shares (does that exist anymore?) to store in my safe because it could get stolen from the bank any day. The risk of that is so minimal no one but the most paranoid would worry about it. Having significant risks of that kind totally kills crypto (or at least all but the largest coins) as a mainstream option.