Installation requires elevation because it has to affect areas the "normal user" cannot write to: and your app is marked as doing the same.
At a guess - and without having your whole app that's all it can be from this instance - your app or one of its dependencies has this in it's manifest file:
<requestedExecutionLevel level="requireAdministrator"/>
This is often because someone thinks it's a good idea to store their cr@p in the registry which will require elevation.
As such, every time you run it, you will get UAC, and (very probably) your users patience will wear very thin ...