c1.flexgrid несколько выбранных строк

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

if(grdSearch.Row==grdSearch.RowSel)
{
    MessageBox.Show("single row selected");
}
else
{
    MessageBox.Show("multiple row selected");
}

но это работает только в том случае, если пользователь делает выбор перетаскиванием с помощью мыши. но когда пользователь выбирает с помощью клавиши CTRL, RowSel и Row имеют одинаковое значение. Как различать одиночный выбор и множественный выбор пользователем.


person user3201928    schedule 22.10.2015    source источник
comment
Это может быть полезно   -  person SimpleVar    schedule 22.10.2015
comment
да, я работаю с аналогичной функцией, поиск разницы между множественным выбором и одиночным выбором сэкономит много циклов и повысит эффективность.   -  person user3201928    schedule 22.10.2015


Ответы (1)


Я знаю, что это для VB, но это может помочь кому-то найти подобную вещь. У меня есть логический столбец в столбце 0, поэтому, позволяя пользователю устанавливать каждый флажок, они устанавливают значение -1. Этот сценарий перебирает весь набор записей и создает строку значений из столбца 3, чтобы я мог вставить ее в свой SQL-запрос.

Dim list As String = ""

        For Each row As C1.Win.C1FlexGrid.Row In flexgrid.Rows
        If flexgrid.GetData(row.Index, 0) = -1 Then
            If list <> vbNullString Then list = list & ", "
                list = list & "'"
                list = list & flexgrid.GetData(row.Index, 3)
                list = list & "'"
        End If
    Next
person Jeff Beagley    schedule 19.02.2016