Как удалить недавно добавленные строки в Gridview? - PullRequest
0 голосов
/ 16 июня 2011

У меня есть два GridView. Один из них - Source GridView, а другой - Destination GridView. Два GridView загружены с некоторыми записями. В Destination GridView добавлен один столбец CommandField, который показывает «Удалить». Здесь я хочу переместить одну строку из исходного GridView в целевой GridView. Предположим, что если я не хочу, я могу удалить вновь добавленную запись, щелкнув поле «Удалить команду» в GridView.

За исключением удаления строк, я выполнил другие вещи. Как удалить вновь добавленные записи. Поле DeleteCommand в сетке вида назначения доступно только для вновь добавленных записей, в противном случае должно быть установлено значение false. Любые предложения.

Ответы [ 3 ]

1 голос
/ 16 июня 2011

Если вы используете две таблицы данных для различных видов сетки, возможно, вы можете использовать перечисление DataRow * DataRowState .

Кнопка удаления вa TemplateField

1 голос
/ 16 июня 2011

Не добавляйте столбец командного поля, а добавляйте поле шаблона. в этом поле шаблона добавьте шаблон элемента, ImageButton и оставьте свойство enabled ImageButton равным true для строк, которые добавляются из исходной сетки, и false для других. (Это можно проверить, сохранив метку в gridview, которая должна быть скрыта, и установите ее текст в «true» для строк, полученных из исходной сетки) ПРИМЕР:

   <asp:TemplateField HeaderText="Delete">
 <ItemTemplate>
 <asp:ImageButton ID="imgbtnDelete" ToolTip="Delete" runat="server" CommandArgument='<%# DataBinder.Eval(Container.DataItem,"SomeField") %>' CommandName="Delete" />
</ItemTemplate>
</asp:TemplateField>

в CodeBehind

  protected void Grid_RowDataBound(object sender, GridViewRowEventArgs e)
{
  Label lbl = (Label)e.Row.FindControl("lbl");
  ImageButton imgbtnDeleteUser = (ImageButton)e.Row.FindControl("imgbtnDelete");
  if (imgbtnDeleteUser != null && lbl.Text==true)
  {
        imgbtnDeleteUser.Enabled = true;    
  }
  else
  {
        imgbtnDeleteUser.Enabled = false;    
  }
}
1 голос
/ 16 июня 2011

Предполагая, что вы визуализируете delete button для каждой строки DataGridView, в кнопке удаления tag property вы можете сохранить индекс строки, в которой она находится, в обработчике события кнопки удаления вы можете получить индекс строки, а затем вы можете удалить строку из datagridview. Это тот случай, когда вы также хотите удалить запись из базы данных или сделать это на стороне сервера.

Но если вы добавляете строки в clientside, вы можете удалить строки из datagridview, используя javascript, так как datagridview отображается как таблица html, и вы можете удалить строки из таблицы html, используя javascript.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...