Get row/column of 3 deep nested Listivew on textbox OnTextChanged
<p>I am attempting to get the row and column location of a text boxes OntextChanged.  </p>

<p>I can get the column location if I do this:</p>

<pre><code>TextBox txtScore = sender;
ListViewItem item = (ListViewItem)txtScore.NamingContainer;
int col = ((ListView)item.NamingContainer).DataKeys(item.DataItemIndex).Values(0);
</code></pre>

<p>which works until I convert the snippet below to a user control.</p>

<p>Code Snippet</p>

<pre><code> &lt;asp:ListView ID="techs" runat="server" ItemPlaceholderID="lvItemPlaceholder" DataKeyNames="Number"
        OnItemDataBound="techs_ItemDataBound"&gt;
        &lt;LayoutTemplate&gt;
            &lt;asp:PlaceHolder runat="server" ID="lvItemPlaceholder" /&gt;
        &lt;/LayoutTemplate&gt;
        &lt;ItemTemplate&gt;
            &lt;tr&gt;
                &lt;td&gt;
                    Tech
                    &lt;%# Eval("Number")%&gt;
                &lt;/td&gt;
                &lt;td&gt;
                    &lt;asp:TextBox ID="tech" runat="server" Text='&lt;%# Eval("Name") %&gt;' /&gt;
                &lt;/td&gt;
                &lt;asp:ListView ID="scorePatterns" runat="server" ItemPlaceholderID="lvScorePatternsItemPlaceholder"
                    OnItemDataBound="scorePatterns_ItemDataBound" DataKeyNames="Ref"&gt;
                    &lt;LayoutTemplate&gt;
                        &lt;asp:PlaceHolder runat="server" ID="lvScorePatternsItemPlaceholder" /&gt;
                    &lt;/LayoutTemplate&gt;
                    &lt;ItemTemplate&gt;
                        &lt;td&gt;
                            &lt;table&gt;
                                &lt;asp:ListView ID="scores" runat="server" ItemPlaceholderID="lvScoresItemPlaceholder"
                                    OnItemDataBound="scores_ItemDataBound" DataKeyNames="Ref,Instance"&gt;
                                    &lt;LayoutTemplate&gt;
                                        &lt;asp:PlaceHolder runat="server" ID="lvScoresItemPlaceholder" /&gt;
                                    &lt;/LayoutTemplate&gt;
                                    &lt;ItemTemplate&gt;
                                        &lt;tr&gt;
                                            &lt;td&gt;
                                                &lt;asp:TextBox runat="server" ID="txtScore" Width="50" AutoPostBack="true" OnTextChanged="txtScore_TextChanged" /&gt;
                                            &lt;/td&gt;
                                        &lt;/tr&gt;
                                    &lt;/ItemTemplate&gt;
                                &lt;/asp:ListView&gt;
                            &lt;/table&gt;
                        &lt;/td&gt;
                    &lt;/ItemTemplate&gt;
                &lt;/asp:ListView&gt;
                &lt;td&gt;
                    &lt;asp:Label runat="server" ID="lblDate" Text='&lt;%# Eval("Date") %&gt;' /&gt;
                &lt;/td&gt;
            &lt;/tr&gt;
    &lt;/ItemTemplate&gt;
</code></pre>

<p></p>
