A top US Republican was among five people wounded in a “multiple shooting” during baseball practice in an upmarket Washington DC suburb.
House of Representatives Majority Whip Steve Scalise was hit but expected to survive after the early morning attack at a park in Alexandria, Virginia.
Two police officers who engaged in a shootout with the attacker were reportedly among the wounded.
Police said the gunman was among five people taken to hospital.
Alexandria police tweeted: “Suspect is in custody and not a threat.”
The lawmakers were practising for the annual congressional ballgame scheduled to be played on Thursday at Nationals Park, home of Major League Baseball team the Washington Nationals.
An eyewitness, Benjamin Childers, said on Twitter that Wednesday morning’s gunfire rang out at the YMCA baseball fields, by the Eugene Simpson Stadium Park.
Local media report a major police presence at the crime scene.
President Donald Trump said in a statement: “We are deeply saddened by this tragedy.
“Our thoughts and prayers are with the members of Congress, their staffs, Capitol Police, first responders, and all others affected.”
White House press secretary Sean Spicer tweeted that the president was being updated on the attack.
Senator Mike Lee, a Utah Republican, texted Fox News to say that Mr Scalise had been shot in the hip and would survive.
He said someone had used a belt as a tourniquet on him.
Texas congressman Roger Williams’ office said he was not shot, but one of his staff was wounded in the attack.
Kentucky Senator Rand Paul told Fox News: “I do believe without the Capitol Hill police it would have been a massacre.
“We had no defence at all. The field was basically a killing field.”
He said they were lucky that Mr Scalise was present because he has a security detail owing to his congressional seniority.
Mo Brooks, an Alabama Republican, told CNN he was on third base during the baseball game when he saw Mr Scalise, who was on second base, shot.
He said Mr Scalise had a bullet hole in his calf, and was saying: “I’m OK, I’m OK.”
Mr Brooks said everyone on the field scattered as 50 to 100 shots were fired.
He said a gunfight had ensued between the shooter and the congressmen’s police security detail, who were armed with pistols.
Mr Brooks said the shooter was armed with a rifle and was “blasting away” from behind the dugout, using it for protection.
The congressman, who said he took refuge behind a batting cage, described the attacker as a middle-aged white male “a little on the chubby side”.
Mr Brooks said congressmen Chuck Fleischmann, of Tennessee, Ron DeSantis, of Florida, and Jeff Duncan, of South Carolina, were among 15-25 lawmakers at the game.
Asked by a CNN host if the attack was deliberate, Mr Brooks replied: “Well, it sure as heck wasn’t an accident!”