Hopefully you problem is already solved, but just for the record I will post this...
* Connect controller to computer using USB
* in Windows, press Win+R and type "joy.cpl" (without quotes)
* in opened application select your controller and press properties
* Press buttons on your controller to see if they are triggered correctly (in my case I was able to see that dpad is pressed permanently without me doing anything)
Above steps will help you diagnose what's wrong with buttons!
* Once you know which buttons/dpad/thumbsticks/etc are affected you have to disassemble controller using iFixIt guides.
* In my case (Xbox One Controller with Bluetooth) I had to reach motherboard with dpad because under dpad was white tape that was not accessible to easily remove... and I needed to do it to clean underneath (and metal "squares"). (this tape is needed, don't mess too much with it)
All the best