Как найти содержимое выбранной ячейки в GridView

Я пытаюсь получить выделенные ячейки и их содержимое в GridView при копировании. При копировании содержимого ячейки я получаю источник элемента ячейки вместо содержимого ячейки.

Событие для копирования сетки

private void RadGrid_CopyingCellClipboardContent(object sender, GridViewCellClipboardEventArgs e)
    {
      var textBlock = e.Cell as TextBlock;

      if (textBlock != null)
      {
        e.Value = textBlock.Text;
      }
    }

Я всегда получаю текстовый блок как ноль. Как я могу получить содержимое ячейки при копировании.

2 ответа

Если вы имеете дело с DataGridTextColumn, вы должны использовать:

TextBlock textBlock = e.Cell.Content as TextBlock;

Кроме того, вы должны знать, что если ячейка находится в режиме редактирования, то содержимое представляет собой TextBox, а не TextBlock.

Если вам не обязательно использовать событие RadGrid_CopyingCellClipboardContent, вы можете вместо этого использовать событие SelectedIndexChanged. Вы можете использовать это событие, чтобы определить, когда была выбрана ячейка, а затем использовать свойство SelectedRow для доступа к отдельным ячейкам и тексту, который вам нужен.

Чтобы увидеть некоторые из них в действии, проверьте страницу MSDN на событие GridView.SelectedIndexChanged здесь: http://msdn.microsoft.com/en-us/library/system.web.ui.webcontrols.gridview.selectedindexchanged.aspx

Другие вопросы по тегам