Вы можете сделать это в HTML за пределами .Net. На вашей странице ASPX у вас есть код вроде:
<div id="loading"><br />
<!-- Animated GIF or other indication that stuff is happening --><br />
</div>
В самом низу вашей страницы, прямо перед вами, может быть фрагмент кода, который выглядит следующим образом:
<script language="javascript"><br >
document.getElementById("loading").style.display = "none";<br />
</script>
Графика - пока она находится в верхней части страницы - будет отображаться первой. Тогда все ваши вещи onLoad произойдут, и, наконец, встроенный JavaScript будет последним, так как он находится внизу страницы.
Много раз я отключаю кнопки в их незагруженном состоянии и включаю их в этом нижнем JavaScript тоже. Это препятствует тому, чтобы пользователь был доволен кликом и вызывал события до того, как страница будет готова.