Доступ к элементам строки в обработчике событий DataGrid_LoadingRow - PullRequest
1 голос
/ 06 февраля 2012

Я пытаюсь назначить разные всплывающие подсказки для строк DataGrid в соответствии с определенными условиями.

private void DataGrid_LoadingRow(object sender, DataGridRowEventArgs e)
    {
        DataGridRow row = e.Row;

        if (row["AssemblySummary"].ToString.Contains("Class"))
        {
            row.ToolTip = "Class definition...";
        }

    }

Я получаю сообщение «Невозможно применить индексирование к выражению типа« System.Windows.Controls.DataGridRow ».»Если у меня есть строка, почему я не могу получить доступ к ее элементам?Как получить доступ к ячейке [i]?

Редактирование сделано: мне очень жаль, мне нужно было получить доступ к первой ячейке в данной строке, как это делается сейчас.У меня все та же ошибка.Спасибо

Ответы [ 2 ]

2 голосов
/ 09 февраля 2012

Попробуйте и дайте нам знать, если это работает:

DataGridRow row = e.Row;
DataRowView rView = row.Item as DataRowView
if(rView != null && rView.Item["AssemblySummary"].ToString().Contains("Class"))
    row.ToolTip = "Class definition...";

Если это не так, возможно, визуальная строка загружена, но данные еще не связаны.

0 голосов
/ 06 февраля 2012

Вы можете получить данные строки, используя свойство DataContext.

Попробуйте эту ссылку http://techiethings.blogspot.com/2010/05/get-wpf-datagrid-row-and-cell.html

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