Кнопка Gridview работает LinkButton не работает - PullRequest
1 голос
/ 07 апреля 2010

Я боролся с этой проблемой уже много часов и мог бы действительно использовать некоторую помощь: -)

Это сетка

<asp:GridView ID="annonceView" runat="server" AutoGenerateColumns="False" DataKeyNames="Id" DataSourceID="dataSourceAnnoncer">
    <Columns>
        <asp:BoundField DataField="Productname" HeaderText="Productname" />            

        <asp:buttonfield buttontype="Link" commandname="Delete" text="Delete"/>

        <asp:TemplateField HeaderText="Administration">
            <ItemTemplate>
                <asp:LinkButton ID="lnkBtnDelete" runat="server" Text="Delete" CausesValidation="False" CommandName="Delete" OnClientClick="return confirm('Delete?')" />
            </ItemTemplate>
        </asp:TemplateField>
    </Columns>
</asp:GridView>

<asp:LinqDataSource ID="dataSourceAnnoncer" runat="server"        ContextTypeName="Namespcae.TheContext" 
    EnableDelete="True" TableName="Annoncer">
</asp:LinqDataSource>    

Щелчок по полю кнопки удаляет запись очень хорошо,Нажатие на кнопку LinkButton не работает.Я получаю постбэк, и сетка отображается как пустая, а запись не удаляется.Похоже, пустой привязки данных.Я пытался создать пользовательское событие OnClick, OnCommand для LinkButton, но ни один из них не запускается.OnRowCommand также не запускается.

Я не вручную DataBind в коде позади.

Ответы [ 2 ]

1 голос
/ 08 апреля 2010

Проблема была не в Asp.net, а в Sitecore (A CMS), простое решение описано здесь, http://www.cassidy.dk/blog/sitecore/2009/01/typesthatshouldnotbeexpanded.html.

Мне кажется, что Sitecore украл несколько часов моей жизни, ну, проблема решена, поэтому я счастлив: -)

0 голосов
/ 07 апреля 2010

Ваш код выглядит нормально и должен работать. Убедитесь, что вы не используете lnkBtnDelete Id где-то еще. Есть ли у вас одновременно ButtonField и TemplateField? Что произойдет, если вы удалите поле кнопки?

...