My native language is Urdu, but I always think in English (which is my second language). However, I don't think English is my 'weaker' language. I grew up reading English-language books, watching English movies and TV shows, studying in an English-language school, etc., so I think my English might actually be better than my Urdu at this point!
I also speak two other languages at an intermediate level but I can't think in them (unless I really force myself to). So I'm guessing you need to have a certain level of fluency in a language in order to be able to think in it.