В запросе Linq есть неявная ошибка приведения для DataGridViewRow, если включен строгий параметр

У меня есть DataGridView, который связан со списком объектов под названием «BaseChange». Объекты BaseChange состоят из 4 свойств ...

ChangeType ChangeStatus ChangeDescription LastChangeDate

В сетке данных есть столбцы для всех 4-х значений и 5-го (столбец с флажком «colIsSelected»). Нет проблем с привязкой списка к сетке и отображением элементов.

Проблема в том, что запрос, который выбирает выбранные элементы в сетке, дает мне неявную ошибку приведения, когда включен строгий параметр.

Это запрос ...

Dim _changes As List(Of BaseChange)

_changes = (From _row As DataGridViewRow In dgvChanges.Rows() _
            Where Convert.ToBoolean(_row.Cells(NAME_COLUMN_IS_SELECTED).Value) = True _
            Select DirectCast(_row.DataBoundItem, BaseChange)).ToList()

... и он дает правильные результаты со строгой опцией off. Неявное приведение в порядок приведено к тегу _row As DataGridViewRow. код и полное сообщение & quot;Implicit conversion from 'Object' to 'System.Windows.Forms.DataGridViewRow'& Quot ;.

Если я исключу & quot; Как DataGridViewRow & quot; из запроса я получаю ошибку позднего связывания для _row.Cells и _row.DataBoundItem, и это также не соответствует строгому параметру.

Мне это нужно для работы с включенным Option Strict и в VB. Я что-то здесь упускаю? У кого-нибудь есть предложения?

Ответы на вопрос(1)

Ваш ответ на вопрос