M., I had a similar problem with my son when he was 2 (and he had always been a poor sleeper also)I finally bought a really good book called Healthy Sleeps Habits, Happy Child, and tried a technique that was appropriate for his age. First of all, does your daughter nap during the day? Most 3 year olds still need to have 1 nap, between 1-2 hours. If she doesn't nap, then she may be over tired, which makes it harder for her to fall asleep at night. Try moving her bedtime back a little earlier anyway (like by 1/2 hour); if she is waking frequently then she's probably not getting enough restful sleep.
Here's what I tried, and the key is to be consistent.
We did our usual bedtime routine; bath,story, etc. (At that time he would not fall asleep without me laying beside him, and he woke frequently during the night)Then I said good night, turned off the light and left the room. Of course, he was up in a flash. I took his hand, and WITHOUT ANY CONVERSATION, put him back in the bed. He got up again and I returned him to his bed, without saying anything. That first night he probably got out of the bed 30 times, and I quietly returned him each time. I think he finally fell asleep from sheer exhaustion! The next night he got out of bed 2 times, and slept through the night. I continue to employ this technique to this day, and it's very effective. Generally, I put him to bed 1 time, and that's it. The key is to say absolutely nothing when you return your child to the bed. And I mean nothing! No positive or negative comments. If you break down and say something, then that gives your child the reinforcement she needs to keep getting out of the bed.
The first night or two are pretty awful, but if you stay consistent for those couple of nights she will stop waking and getting out of bed. One thing I learned from that book was that my son needed more sleep than he was getting. I actually moved his bedtime back by 45 min to 1 hour and he started sleeping better and longer than before.
Good luck!