I love to study young children and I have learned a few things over many years of being a teacher and a mom. Young children use what works for them. If they realize that whining adds drama to their speech, and mom and dad respond more quickly to dramatic speech patterns than to normal, conversational speech tones--you can bet your next lotto ticket that they will use whining voices to get what they want more quickly. Young children are SO MUCH SMARTER than we adults give them credit for.
Often times these behavior patterns are so established that mom and dad don't even realize that their children use whining to get what they want. But Grandma and Grandpa do! And preschool teachers do, too! So what can a parent do to curb the whining? I have a fail proof and light hearted solution. First, have a simple conversation with your child about what whining sounds like to your ears. Pick a time when you and your child are calm and alert...not during an argument or before bedtime. When you have the right moment, it is time for the whining discussion and role playing to happen. Speak in a normal tone and then speak in the "Whining Voice" and let your children hear the difference. Have them mimic both the normal voice and the "Whining Voice" back to you, so you can be sure that they understand.
Now for the lighthearted part. Help your children give the "Whining Voice" a name. Our family always used "Wendy and Wayne" but any name that your children want to assign to this character will work. Then, whenever you hear your children slipping into the dreaded "Whining Voice", calmly ask them to restate their request because you cannot understand "Wendy Whiner" or whomever they have named their "Whining Voice". If you consistently refuse to acknowledge them during their whining and playfully use comments to remind them that you cannot hear or understand them when they are whining...I promise you it will not take long for this behavior to extinguish itself.
Case closed--in a fun, simple and hugely effective manner. Try this and let me know how it works for you!