Я сделал это до того, как использовал пользовательское всплывающее окно, используя отдельное окно Telerik Mvc.Мой пример кода выглядел так:
<%= Html.Telerik().Window()
.Name("CompanyWindow")
.Title("Company Details")
.Buttons(b => b.Maximize().Close())
.Visible(false)
.Modal(true)
.Width(600)
.Height(600)
.Draggable(true)
.Resizable()
%>
<% Html.Telerik().Grid<Vigilaris.Booking.Services.CompanySummaryDTO>()
.Name("CompaniesGrid")
.ToolBar(tb => tb.Template(() => { %>
<a href ="#" onclick="createCompany()" >Insert</a>
<% }))
.Columns(col =>
{
col.Bound(c => c.Id).Width(20);
col.Bound(c => c.CompanyName).Width(120);
col.Bound(c => c.ResponsiblePersonFullName).Width(160);
col.Bound(c => c.ResponsiblePersonUserName).Width(160);
col.Bound(c => c.ResponsiblePersonEmail).Width(160);
col.Command(cmd =>
{
cmd.Edit().ButtonType(GridButtonType.Image);
}).Title("Edit");
})
.DataKeys(keys => keys.Add(c => c.Id))
.DataBinding(binding => binding.Ajax()
.Select("_IndexAjax", "Company")
.Insert("_InsertAjax", "Company")
.Update("_UpdateAjax", "Company")
)
.Sortable()
.Render();
%>
<script type="text/javascript">
function createCompany() {
var url = '<%= Url.Action("New", "Company") %>'
$.post(url, function (data) {
var window = $('#CompanyWindow').data('tWindow');
window.content(data);
window.center().open();
});
}
</script>
В функции createCompany вы заметите, что я вызываю window.center (). Open ().Это явно центрирует всплывающее окно.
Однако я не думаю, что это именно то, что вы хотите сделать, но это может дать вам несколько указателей в правильном направлении.Надеюсь, это поможет.