Magic has this absolutely horrible habit of trying to eat all the time. I've taken all sorts of suggestions on training her to kick the habit and, if anything, it's just gotten worse!
Right now, the rules laid down for her are that she cannot graze with a bit in her mouth (whether or not she has a rider), and she cannot graze while she's being led. When she tries to graze, I tap her chin with my boot (hard enough to get her attention, but not hard enough to hurt her), and/or pull her head back up with the reins/lead rope. But the problem is, she's persistent -- I literally have to throw all my weight into pulling her head back up. And just yesterday, my friend was trotting her across a small piece of grass, and suddenly, without warning, Magic yanked her head down to eat, kicked herself in the chin and fell on her knees, and threw my friend over her head. My friend was fine, but when I checked Magic, she had enough blood coming from her mouth that I sent someone running after the show vet and was ready to drop out of all my classes. (She'd just split her upper lip, cut the inside of her bottom lip, and scraped right behind her mouth on one side. The show vet said she'd be fine to ride, it shouldn't need any stitches, just maybe put some ice on it.)
You'd think she'd learn, but only a few minutes later, she did the same thing, but managed to stay on her feet that time.
I make sure that she has a reasonable enough amount of food that she's not hungry -- she's probably even over fed a bit. If I hold her lead short enough that she can't reach the ground, and correct her once or twice, then she'll give up and stand rather nicely, but if someone new is holding her, or someone she knows will let her eat, she'll be constantly diving for grass.