Infragistics UltraWinGrid обработчик событий CellChange на уровне столбцов - PullRequest
1 голос
/ 27 февраля 2012

Есть ли способ определить конкретный обработчик события CellChange для каждого столбца UltraWinGrid?

Я выполняю рефакторинг обработчика события CellChange для InfraGistics UltraWinGrid, который выглядит следующим образом:

Select Case e.Cell.Column.Key

Case "Name"
' handle cell change event for Name cell with a big ugly blob of code

Case "Title"
' handle cell change event for Title cell with a big ugly blob of code

' ... etc ...

End Select

Я хотел бы иметь возможность создавать обработчики событий, которые запускаются при изменении ячейки определенного столбца, но я не знаю, возможно ли это.Если это не так, я просто реорганизую случай выбора, чтобы вручную вызывать специфичные для столбца обработчики событий.

Select Case e.Cell.Column.Key

Case "Name"
CellChanged_Name(sender, e)

Case "Title"
CellChanged_Title(sender, e)    

' ... etc ...

End Select

Может кто-нибудь сказать мне, возможно ли создать обработчики событий, которые запускаются, когда ячейкаконкретный столбец меняется?Или мне лучше просто вручную вызывать определенные для столбца функции?

Ответы [ 2 ]

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

Пожалуйста, обратите внимание, я перевожу это из C # на лету, чтобы что-то могло быть не так.
Вам нужно сослаться на пространство имен Linq и затем использовать синтаксис, такой как

в вашей форме_загрузки илигде-нибудь еще

Dim dictionary As New Dictionary(Of String, Infragistics.Win.UltraWinGrid.CellEventHandler)
dictionary.Add("Name", CellChanged_Name)
dictionary.Add("Title", CellChanged_Title)
dictionary.Add("....", ....)

в вашем обычном событии CellChanged

dictionary(e.Cell.Column.Key).Invoke(sender, e)

в качестве ссылки, пожалуйста, посмотрите на это Замена для большого переключателя?

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

Обработчики событий для обработчика событий CellChange всегда будут вызываться, когда есть изменение в любой ячейке, и сетка не имеет способа создать обработчик событий для определенного столбца. Если вы хотите, вы можете обратиться к Infragistics и порекомендовать им добавить эту функцию через форумы или отправив запрос в службу поддержки. Для этого есть ссылки на страницу помощи: http://www.infragistics.com/support/get-help.aspx

...