2015-01-27 2 views
0

Я использую GridView в своем веб-приложении и преобразовываю кнопки удаления/редактирования по умолчанию в поля шаблона. Я сделал это, потому что я не могу просто удалить пользователей из базы данных с запросом SQL SQL по умолчанию, который был сгенерирован.Шаблон Button GridView

Я хочу использовать Memberhip.DeleteUser(), однако я не знаю, как получить имя пользователя из GridView, которое соответствует LinkButton, которое пользователь нажимает.

Как бы я это сделал?

ответ

1

Вы можете передать значение в CommandArgument и получить его в коде.

<asp:TemplateField> 
    <ItemTemplate>     
     <asp:ImageButton runat="server" ID="ibtnDelete" 
     Text="Delete" 
     CommandName="Delete" 
     CommandArgument='<%# Eval("UserName") %>' 
    </ItemTemplate> 
    </asp:TemplateField> 

Вы также можете использовать DataKeyNames="UserName" в вашем GridView и получить его в код.

+0

Должно быть, я делаю что-то неправильно. 'Memberhip.DeleteUser (e.CommandArgument) Response.Write (Request.RawUrl.ToString())', вот как я получаю аргумент в коде позади. Я попытался передать 'CommandArgument = '<% # Eval (" UserName ")%>' '' и 'CommandArgument =" @ userName "' –

+0

Кому-то интересно, я закончил использование 'CommandArgument =' <% # Container. DataItemIndex%> '', чтобы получить индекс предмета, а затем используя это, выяснив текст ячейки. –

Смежные вопросы