Проблема с событием списка данных

Список данных:

  <asp:DataList ID="DataList2" runat="server" 
                    DataSourceID="AllQuestionsResponded" 
                    GridLines="Horizontal" DataKeyField="ThreadsID" 
                    onselectedindexchanged="DataList2_SelectedIndexChanged">
                    <ItemTemplate>

                         <asp:LinkButton ID="LinkButton1" runat="server">'<%# Eval("ThreadTitle") %>'</asp:LinkButton>
                        <br />
                        <br />
                    </ItemTemplate>
                </asp:DataList>

И источник данных sql:

           <asp:SqlDataSource ID="AllQuestionsResponded" runat="server" 
                ConnectionString="<%$ ConnectionStrings:CP_AllQuestionsAnswered %>" SelectCommand="SELECT ThreadTitle, ThreadsID
FROM Threads 
WHERE ThreadsID IN (SELECT ThreadsID
FROM Comments
WHERE UsersID=@UserID)
" onselecting="AllQuestionAskedDataSource_Selecting">

Код события:

    protected void DataList2_SelectedIndexChanged(object sender, EventArgs e)
{
    Server.Transfer("AnswerQuestion.aspx?x=" + DataList2.DataKeyField + "&question=" + DataList2.SelectedValue + "&time=" + DateTime.Now);
}

Событие никогда не запускается!! сколько бы раз я не нажимал ссылку на кнопку.. Почему так :( ..


person Dmitry Makovetskiyd    schedule 13.07.2011    source источник


Ответы (2)


Попробуйте указать CommandName для выбора.

<asp:LinkButton ID="LinkButton1" CommandName="Select" runat="server">'<%# Eval("ThreadTitle") %>'</asp:LinkButton>

В качестве альтернативы вы можете использовать ButtonColumn

<asp:BoundColumn    ButtonType="LinkButton"
                    HeaderText="ColumnHeader" 
                    DataField="LinkButton"
                    CommandName="Select" />
person Bala R    schedule 13.07.2011
comment
Спасибо, это работает... но я не могу передать выбранное значение... Он говорит мне, что DataList1.SelectedValue.ToString() имеет неправильный формат. Он выдает исключение формата :( - person Dmitry Makovetskiyd; 13.07.2011

Пытаться

<asp:LinkButton ID="LinkButton1" runat="server" command="Select" autopostback="True">
person The Evil Greebo    schedule 13.07.2011