Addressing the Tories’ spring forum, he said he was to blame for the handling of revelations about his holding in his late father’s offshore fund.
Days after questions were first raised, the PM admitted this week he had owned and later sold units in the fund.
Mr Cameron also said he would publish information on his tax returns later.
Labour leader Jeremy Corbyn said he “looked forward” to that publication.
But Downing Street felt the only way to move forward was by confronting the issue head on with an unprecedented level of detail, our correspondent said, adding however that Labour was in no mood to let the row drop.
Hundreds of protesters calling on Mr Cameron to “close tax loopholes or resign” rallied outside Downing Street on Saturday, some moving on to demonstrate outside the venue where the Conservative forum was held.
Addressing Conservative Party activists at the central London forum, Mr Cameron said: “It has not been a great week. I know that I should have handled this better, I could have handled this better.
“I know there are lessons to learn and I will learn them.
“Don’t blame Number 10 Downing Street or nameless advisers, blame me.”
Mr Cameron said: “I was obviously very angry about what people were saying about my dad. I loved my dad, I miss him every day.
“He was a wonderful father and I’m very proud of everything he did. But I mustn’t let that cloud the picture. The facts are these: I bought shares in a unit trust, shares that are like any other sorts of shares and I paid taxes on them in exactly the same way.
“I sold those shares. In fact, I sold all the shares that I owned, on becoming prime minister.”
Mr Cameron continued: “Later on I will be publishing the information that goes into my tax return, not just for this year but the years gone past because I want to be completely open and transparent about these things.
“I will be the first prime minister, the first leader of a major political party, to do that and I think it is the right thing to do.”
The documents, known collectively as the Panama Papers, revealed that Mr Cameron’s late father Ian had been a client of Mossack Fonseca when establishing a fund for investors.
Labour’s shadow chancellor John McDonnell has called for an “open and public” inquiry into the revelations.
The Conservatives are defending about 880 seats last contested in 2012.
More than 2,700 seats in 124 councils across England are up for grabs next month in what will be Labour leader Jeremy Corbyn’s first national test in England at the ballot box.