My group is almost exclusively women.
What I think happened was she's a very congenial, very polite person that tries to be very helpful. It's a plus in our group, and qualities I look for when I hire folks. Problem is, she internalizes pressures and it just got to the point where the safety valve blew.
Part of the problem turned on someone from another staff imposing too much on her time (she serves as a subject matter expert for me on budgetary distribution within our appropriation) looking for data and not backing off. She lost her cool. Problem is, the anger then spilled over to her team leader, me, and my boss in closely spaced, but unrelated conversations. So I ended up with four complaints, including my own. Needed to have the talk.
Approached the talk delicately, on the premise of allowing her the space to catch on her own that her approach wasn't exactly the best way of handling the situation. It was when the realization hit, she broke down emotionally.
I also think part of it is the stress she has in her own life--she's getting married in June, and that, too, is stressful. Lot of things hitting her. Her family preparing for the marriage, her preparing, her fiance, a very stressful job, her pushing herself to succeed.
I think her "issues" are mixing up, and the complexity of all this is playing too. Just the "one straw too many".
That may well be the only time you have a problem with her, as she sounds like a perfectionist!
I have had experiences similar to yours as a supervisor. I think your approach to the situation was excellent.
You couldn't ignore what happened, but you did allow her to come to the realization of what she did was inappropriate and thereby learn from it.
The emotional breakdown can be uncomfortable at best, as I have had both men and women hit that point (I always keep tissues handy as well!) after realizing the scope of their "error", mainly because they truly care about what they do and how well they do it.
I agree with Molly's observation that this lady is very unlikely to repeat this error.