The off-duty officer left the fundraiser inside the Kiddie Korner Day Care just after 10 p.m. Friday and went to his car near 87th and Damen.
Police say the attacker, identified as 16 year-old Jerry Moore, pointed a gun at the officer. The two struggled, and the gun went off, killing Moore.
The Independent Police Review Authority is investigating.