Having had this happen to me recently too, I've been pondering some possible solutions.
It's already the case that questions with upvoted answers cannot be unilaterally deleted by the questioner (see here). So, if a question is around long enough for any decent answers to accumulate some upvotes, the problem goes away.
As such, I would propose preventing new users (say < 50 rep) from unilaterally deleting questions less than (say) 24 hours old, if they have any answers at all (upvoted or otherwise). This would give a grace period for decent answers to get the attention they deserve. If after 24 hours there still are no decent answers (none with > 0 net votes), the OP is free to delete their question as is currently the practice.
An alternative proposed by Jonathon Hobbs (see the comments) would be to make the 24 hour period begin when the first answer is posted to the question (or, possibly, when each answer is posted). This would better protect the answers (rather than the question) for at least 24 hours, and would give the question asker an "opt-out" for as long as no answers are forthcoming.
To allow edge cases to be handled, the questioner should still be able to flag their question in those first 24 hours, to request moderator deletion.
Note that these changes should only apply specifically to the original poster of the question - the closure/deletion process for other members of the community must be left unchanged in order to allow community moderation to remain effective.