Another thought, it can often come across as incredibly ungrateful when people point out issues with gifts but sometimes the reality is that gifts don't help anywhere near as much as the giver presumably hopes they do.
I remember when a family member was terminally sick it was a nice gesture when people brought food but the downside was the growing pile of plates and dishes that had to be returned to their owners, at a time when nobody was really in a place to try and figure out who had brought what. My wife and I now make a point of using disposable containers whenever we make a meal for someone in a similar situation (nursing a sick family member, recovering from surgery, whatever) so they don't have to think about whose container it is. If they can reuse it they are welcome to, if not they can throw it away.
It doesn't feel all that different in principle to not truly understanding the plight of the person who doesn't own a can opener. It's easy enough to say "well go and buy one then" but the people using the food bank generally aren't the people with cash floating around to "just buy stuff".
Edit: I tried without success to find the article I originally mentioned, but did find another interesting idea, that goes like this:
1. Assume you have $50 to provide for your family for a month. Figure out your budget, stretching it to get the absolute maximum out of every dime. Don't forget to budget for toiletries etc. Design a menu that fits enough meals for everybody into that $50.
2. Look at the menu and decide what you'd really miss if you actually had to live on the menu you just created.
3. Donate some of those things.