Correct Answer:
B. Hari Singh Nalwa
Haripur City is named after Hari Singh Nalwa. He was a renowned general of the Sikh Empire under Maharaja Ranjit Singh and founded the city in 1822. The city's name directly honors his contribution and legacy in the region.
- Maharaja Ranjit Singh was the founder and ruler of the Sikh Empire, but Haripur was not named directly after him.
- Gulab Singh was the founder of the Dogra dynasty and the first Maharaja of Jammu and Kashmir, not associated with the naming of Haripur.
- Sher Singh was a successor to Maharaja Ranjit Singh, but he did not found or name Haripur.