Я бы рекомендовал использовать библиотеку JavaScript, такую как JQuery. Есть много модальных всплывающих плагинов, которые делают подобные вещи очень простыми.
Один из моих любимых - Simple Modal от Eric Martin. Ниже приведен пример того, как это можно использовать для отображения ViewData.
<script type="text/javascript" language="Javascript">
$(document).ready(function() {
$("#sample").modal();
});
</script>
<div id="sample"><%=ViewData["key"]%></div>
Edit:
Чтобы использовать window.open см. Ниже. Однако это не модальное всплывающее окно, поскольку оно существует в новом окне браузера. Это может быть заблокировано блокировщиками всплывающих окон, поэтому я бы не стал этого делать.
<script type="text/javascript" language="Javascript">
$(document).ready(function() {
var url = "<%= ViewData["key"].ToString() %>";
window.open(url, "DescriptiveWindowName",
"resizable=yes,scrollbars=yes,status=yes");
});
</script>
Со страницы разработчика Mozilla
Как узнать, когда мое окно заблокировано блокировщиком всплывающих окон?
Со встроенными блокировщиками всплывающих окон Mozilla / Firefox и Internet Explorer 6 SP2 вы должны проверить возвращаемое значение window.open (): оно будет нулевым, если окно не было разрешено открывать. Однако для большинства других блокировщиков всплывающих окон нет надежного способа.
Надеюсь, это поможет.