Найти колонку в DataGridView по ее DataPropertyName - Visual Basic .NET

Узнай цену своей работы

Формулировка задачи:

Подскажите как покороче найти колонку в DataGridView по ее DataPropertyName? Ситуэйшен: Визуальным конструктором набросал на форму(xsd) несколько DataTable, потом их замкнул на несколько DataGridView. Одно поле в них(DataGridView) по базе данных называется одинаково ("FileNamе"), но в конструкторах полей DataGridView оно (свойство Name) обзывается сложно - типа "FileNamеDataGridViewTextBoxColumn" и переобозвать нормально (на "FileNamе") не могу - среда ругается на неуникальность (да, в другом DataGridView установил уже свойство поля = "FileNamе" ) Теперь из sub-a хочу обратиться по имени "FileNamе" (нужно, удобнее так!), но получаю ошибку, что поля FileNamе нет естественно.
Поэтому и возник вопрос можно ли выйти на колонку по ее DataPropertyName (там нормально записано "FileNamе" в отличии от свойства Name)

Решение задачи: «Найти колонку в DataGridView по ее DataPropertyName»

textual
Листинг программы
'…
Dim iCol As Integer = getIndex("DataSourcePropertyName")
If iCol > -1 Then FileName1 = row1.Cells(iCol).Value.ToString
'…
Public Function getIndex(ByVal pName As String) As Integer
    Dim index As Integer = -1
    Dim cl = From dgc As DataGridViewColumn In DataGridView1.Columns Where dgc.DataPropertyName = pName
    If cl.Count > 0 Then index = DataGridView1.Columns.IndexOf(cl(0))
    Return index
End Function

Оцени полезность:

9   голосов , оценка 3.667 из 5
Похожие ответы