LinkButton Command event handler args always strings
<p>I've got a LinkButton control in a user control like this (Accordion is from the AJAX Control Toolkit):</p>

<pre><code>&lt;cc1:Accordion runat="server"&gt;
    &lt;Panes&gt;&lt;/Panes&gt;
    &lt;HeaderTemplate&gt;&lt;/HeaderTemplate&gt;
    &lt;ContentTemplate&gt;
        &lt;asp:TextBox Text='&lt;%# Bind("Title") %&gt;' runat="server"&gt;&lt;/asp:TextBox&gt;
        &lt;asp:LinkButton Text="Update" CommandArgument='&lt;%# Container.DataItem %&gt;' CommandName="ItemUpdate" OnCommand="LinkButton_Command" runat="server"&gt;&lt;/asp:LinkButton&gt;
    &lt;/ContentTemplate&gt;
&lt;/cc1:Accordion&gt;
</code></pre>

<p>The accordion is bound in Page_Load:</p>

<pre><code>protected void Page_Load(object sender, EventArgs e)
{
    Accordion1.DataSource = GetACollection();
    Accordion1.DataBind();
}
</code></pre>

<p>But in the command event handler, no matter what I do, the arguments are always strings:</p>

<pre><code>protected void LinkButton_Command(object sender, CommandEventArgs e)
{
      // sender is alway a string (the Text of the clicked button)
      // e is always a string property of the Container.DataItem object
}
</code></pre>

<p>The strings are coming from the right objects (the button and the bound DataItem, respectively), but I need the objects themselves (the DataItem particularly).</p>

<p>What's going on?</p>
