Here is the short version of a negative answer. Let $P$ be the collapse of $\omega_2$ to $\omega_1$ with countable conditions. Fix a familytree $(N_\eta:\eta\in 2^{<\omega})$ of quite different models, increasing along each branch. Specifically, make sure that along each branch in $2^\omega$ the union of the models will get a different intersection with $\omega_2$. Now go to any extension $V^Q$ where there is a new real. The new real will give a new branch, yielding a new model; no condition in $P$ can be generic for this model, since a generic condition has to know the model.
(I could not find a counterexample for a week. But since I am in Jerusalem at the moment, I eventually gave up and asked Shelah. It took him only a minute or so to come up with this answer. He also said that the reason he is using this specific $P$ is just to understand generic conditions better; many others would work as well.)
- For alle $\eta\subseteq \nu$ we have $N_\eta \subseteq N_\nu$.
- For all $\eta,\nu\in 2^\omega$ with $\eta\not=\nu$ we have $N_\eta \cap \omega_2 \not=N_\nu\cap \omega_2$. ($N_\eta$ is defined naturally as $\bigcup_n N_{\eta\restriction n}$.)
- Moreover: For every $\eta\in 2^{<\omega}$ there is an ordinal $\alpha_\eta\in \omega_2$ witnessing that the two branches that split at $\eta$ will yield models whose intersections with $\omega_2$ are different: $\alpha_\eta\in N_{\eta^\frown 1}$$\alpha_\eta\in N_{\eta^\frown 0}$, but not in $N_{\eta^\frown0}$$N_{\eta^\frown1}$, and also $\alpha_\eta\notin N_\nu$ for any $\nu$ extending $\eta^\frown0$$\eta^\frown1$.
- There is a $\delta$ such that $\omega_1\cap N_\eta=\delta$ for all $\eta\in 2^\omega$. (We will in fact have $\omega_1\cap N_\eta=\delta$ also for all $\eta\in 2^{<\omega}$.)
Now let $Q$ be a (ccc, or just proper) forcing adding a new real $\nu\in 2^\omega$. In the extension $V^Q$ the family $(N_{\nu\restriction n}[G]:n\in \omega)$ is an increasing sequence of elementary submodels; its union $N_\nu[G]$ is again an elementary submodel, and $N_\nu[G]\cap \omega_1=\delta$.
- Start with $s_{\langle\rangle}:=\langle\rangle$, $M_{\langle\rangle}=N_{\langle\rangle}$.
- Given $M_\eta=N_{s_\eta}$, first pick an ordinal $\alpha_\eta$ which appears in one of the successors of $M_\eta$ in the $N$-tree (i.e., in some $N_{s_\eta^\frown i}$, but not in coboundedly many of them).
- Let $M_{\eta^\frown 0}$ be a successor of $M_{\eta}$ containing $\alpha_\eta$.
- Let $M_{\eta^\frown 1}$ be a successor of $M_{\eta}$ not containing $\alpha_\eta$, but containing some larger ordinal $\beta_\eta$$\beta_\eta<\omega_2$.
- Note that no model $M\supseteq M_{\eta^\frown1}$ with $M\cap \omega_1=\delta$ can contain $\alpha_\eta$ as an element, since already $M_{\eta^\frown1}$ sees a bijection between $\omega_1$ and $\beta_\eta$; if a new element appeared in the range of this bijection, a new element would have to appear also in the domain.