Нарушаю ли я ООП используя partial классы?
Нет. 
Partail классы это механизм компилятора. А ООП стиль написания программ. Понятия из разных областей и не пересекаются никак.
Если речь идёт о wpf или чем-то подобном, то так и нужно. Не трогать автоматически сгенерировано классы, а логику писать в своих (ну или автоматически созданных, но с местом для творчества).