Telerik RadTabStrip неправильно отображается при загрузке через AJAX

Я динамически загружаю пользовательский элемент управления и отображаю его с помощью RadAjaxPanel. Проблема в том, что мой RadTabStrip отображается неправильно. Скин не наложен и я вижу только часть текста. Если я полностью обновлю страницу, она будет отображаться отлично, и с этого момента она будет отображаться правильно, даже если я снова загружу ее с помощью AJAX (пока я не открою новое окно браузера и не начну снова).

Этот симптом также очевиден для RadDatePicker (скин не отображается правильно при начальной загрузке AJAX).

Любая помощь будет высоко ценится!

Дэйв.

P.S. Я должен указать, что я использую эту строку кода, чтобы принудительно обновить RadAjaxPanel, и только тогда возникает проблема:

pnlAjax.ResponseScripts.Add(String.Format("$find('{0}').ajaxRequest();", pnlAjax.ClientID));

person Dave    schedule 16.12.2009    source источник
comment
Я также должен отметить, что если я использую asp:UpdatePanel, вкладка отображается нормально. Однако UpdatePanel вызывает у меня другие проблемы, такие как эта ошибка, возникающая очень часто; Не удалось найти UpdatePanel с идентификатором «ctl00_CampaignBrowse_ctl00_UpdatePanel1». Если он обновляется динамически, он должен находиться внутри другого объекта UpdatePanel.   -  person Dave    schedule 16.12.2009


Ответы (3)


Если установка EnableAjaxSkinRendering на true не помогает, попробуйте вручную включить необходимые файлы CSS в тег <head> вашей страницы:

<link rel="stylesheet" type="text/css" href="Skins/TabStrip.css" />
<link rel="stylesheet" type="text/css" href="Skins/Default/TabStrip.Default.css" />
person Atanas Korchev    schedule 16.12.2009
comment
Привет Корчев, спасибо за ваш ответ. Обе очень хорошие идеи, но я уже пробовал EnableAjaxSkinRendering, а также ссылки на таблицы стилей как в MasterPage, так и в рассматриваемом UserControl. Это просто не соответствует стилю :( Есть другие идеи? - person Dave; 16.12.2009
comment
Хм. Это действительно очень странно. Ручная регистрация CSS должна была помочь. Я предлагаю вам проверить наличие ошибок JavaScript или неудачных HTTP-запросов (используя FireBug или Fiddler). Если ничего из этого не помогает, я рекомендую вам открыть тикет в службу поддержки, чтобы мы могли устранить проблему. - person Atanas Korchev; 17.12.2009

Не использовал материал RadAjax, но с помощью jquery ($.ajax) я заработал, просто установив RegisterWithScriptManager="false". Может кому поможет...

person Mikael    schedule 12.04.2011

У меня была аналогичная проблема с загрузкой элементов управления Telerik во время выполнения по запросу ajax, и это было исправлено после того, как я включил рендеринг скина ajax (видел, как это сделать, из этой демонстрации).

Дик

person Dick Lampard    schedule 16.12.2009
comment
Привет Дик, спасибо за предложение. Я пробовал это, и это не помогло. - person Dave; 16.12.2009