2016-11-03 2 views
0

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

После того как пользователь выбрал поле со списком фаз, тип свойства должен фильтровать элементы на основе выбранного имени фазы. Я использую PageMethods для передачи выбранного значения имени фазы для его фильтрации. (Я попытался и успешно прошел выбранное значение Фазового имени).

Пожалуйста, помогите мне решить, как решить эту ошибку! Я застрял в этой проблеме в течение дня! Цените свою помощь.

ответ

0

в вашем методе getPropertyTypeByPhaseId() вы запускаете ManageLot ml = new ManageLot(), а затем пытаетесь получить доступ к его члену ml.LotGrid. Вы уверены, что LotGrid правильно инициализирован в конструкторе ManageLot()? Скорее всего, это null, если ваш конструктор ManageLot() - это просто базовый конструктор заглушки.

Вместо использования веб-методов для изменения элементов управления DX, почему бы лучше не использовать свои собственные (DX) обратные вызовы и события? Вы можете поместить свой ComboxBox внутри ASPxCallbackPanel и обработать событие OnCallback, где вы можете добавлять элементы в свой Combobox. Звучит слишком сложно для вас?

Я не уверен, что вы сможете получить доступ к правильно инициализированным переменным сервера управления DX из веб-методов. Если вы все еще хотите использовать веб-методы, вам нужно вызвать веб-метод из JS, передать в param, выполнить некоторую работу и вернуть обратно объект JSON, который вы будете использовать в обработчике успешных веб-методов, а затем попытаться добавить новые элементы в ваш DX управляет на стороне клиента через JS. Дайте мне знать, какой путь вы собираетесь выбрать.

HTH

Смежные вопросы