Каков наилучший способ получить и установить выбор при использовании привязки данных в winforms? - PullRequest
0 голосов
/ 08 апреля 2009

Я использую привязку в приложении win-forms (.Net 2.0) и пытаюсь найти лучший способ сохранить выбранные элементы в моих элементах управления с привязкой к данным. Я прочитал, что лучший способ получить доступ к выбору - использовать свойства * Current и * Position * CurrencyManager (или bindingSource). Проблема в том, что я не могу найти способ ничего не выбирать (значение Position всегда будет указывать на индекс одного из элементов в списке), и нет также способа узнать, есть ли много предметы выбраны. Есть ли способ решить эти проблемы с помощью CurrencyManager или мне следует начать использовать свойства, предоставляемые элементами управления (например, свойство SelectedRows DataGridView)?

Спасибо!

Ответы [ 2 ]

0 голосов
/ 15 сентября 2009

Невероятно, что у BindingSource по-прежнему нет возможности выбора без выбора.

0 голосов
/ 08 апреля 2009

Я не совсем уверен, что вы спрашиваете здесь. Если вы спрашиваете, как связать подробные элементы управления с выбранным элементом в элементе управления списком или сетке, я думаю, что лучший подход - использовать два объекта BindingSource. Тот, к которому привязана сетка, и тот, к которому привязаны элементы управления детализацией. Затем, когда пользователь выбирает строку в сетке, используйте свойство Filter подробного BindingSource, чтобы сузить его до одной выбранной строки. Затем вы будете уверены, что детали выбранной строки появятся в элементах управления.

Например:

  DetailBindingSource.Filter = "ID = " & SelectedRow.IDColumn.Value

Если это не то, что вы ищете, объясните, пожалуйста.

EDIT:

Хорошо, мои извинения за то, что не поняли первоначальный вопрос. Я бы сказал, что лучше всего использовать свойства элемента управления. Установите для свойства SelectedRow / SelectedItem нужный элемент.

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

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