If you are legally living in a country, contributing to their economy, paying taxes, etc. then why should you not be allowed to have a say in how that money is being spent? Why are you not allowed to vote on issues that affect you and your family? Why should only citizens of a country be allowed to contribute their opinions...when everyone that lives in the country is affected by the decisions? Who says a citizen's opinion is worth more than an expat's (and by that I mean, giving the citizens the venue to voice their opinions by voting)? And why?
I'm not talking about legalities (current immigration laws, etc.)...I'm just asking your opinion of why a citizen should have more rights than an expat. The expat might contribute more to the country as a whole and/or be much more knowledgable in the aspects of politics than the citizen. Does a worthless citizen automatically deserve to have more rights than an expat who is a valuable asset to society (and could have been for 50 years or more) just because of where they were born?
*Just to note, this entire post is based on natural-born citizens, not immigrants who gain citizenship (which seems more relevant to the original post on foreigners being allowed to vote in another country)*