Well, Valentine's Day is coming up and aside from battling over not eating those little hearts, I'm sure my family will give me a box of candy.
In terms of work events, I finally found a way to be able to go without participating in the food -- hard to do, but I wanted to honor the people. I found that when I refused food and told them it was because I was on a diet, they would continue to encourage me to just have a little, a few bites won't hurt you, live a little, etc. But when I told them I was under a doctor's care and wasn't allowed to eat those foods, they stopped the pushing. First, it's true I was under a doctor's care even if the only directive was to "lose weight." And the worse that happened was one nosy Rosie asked me what was wrong and I just told her I didn't want to discuss it as it was personal.
So, if it's possible to go to these events and not eat, then just politely refuse the food. If you're struggling with the will power, then talk to the person being honored privately and explain. If they don't understand, well you probably didn't miss much anyway.