Что необходимо для инициализации элементов управления ASPxGridView? - PullRequest
0 голосов
/ 30 января 2020

Я попытался динамически загрузить GridView на существующей странице с сервера. Однако когда я получаю html с сервера и вставляю его в элемент, появляется сетка, но некоторые действия на ней недоступны (например, перетаскивание на столбцы, фильтры и т. Д.). Кроме того, у меня есть обратный вызов на событие init и контролирует событие init, но они не вызывают. Недавно я загрузил gridview с полной страницей, и все было хорошо. В центре поддержки я обнаружил, что мне нужно использовать ASPx.Evt.DispatchEvent(window, "load"); после вставки gridview на мою страницу, но нет никаких объяснений по этому поводу. В настоящее время, после того, как я добавил этот фрагмент кода, большая часть функциональности работает хорошо, и события на стороне клиента запускаются, но некоторые все еще не работают, например GridView.PerformCallback();. Что еще мне нужно сделать, чтобы инициировать элементы управления в моем виде сетки?

Исходный код о событии 'load' в dev express Центр поддержки https://www.devexpress.com/Support/Center/Question/Details/T489045/how-to-determine-if-scripts-are-loaded

1 Ответ

0 голосов
/ 30 января 2020

Вышеупомянутая заявка относится к продукту MVC Extensions, а не к WebForms.

В то же время, зачем вам нужно рендерить HTML, добавлять его в DOM и инициализировать вручную? Это не очень хорошая практика для серверных элементов управления (т. Е. Когда клиентская сторона должна быть должным образом обработана).

Если вам нужно добавить Dev Express ASP. NET Веб-формы управляют динамически, рассмотрите возможность использования, например, ASPxCallbackPanel .

...