        function onSilverlightError(sender, args) {
 
            var appSource = "";
            if (sender != null && sender != 0) {
                appSource = sender.getHost().Source;
            }
            var errorType = args.ErrorType;
            var iErrorCode = args.ErrorCode;
 
            if (errorType == "ImageError" || errorType == "MediaError")
                return;
 
            var errMsg = "Unhandled Error in Silverlight 3 Application " + appSource + "\n";
 
            errMsg += "Code: " + iErrorCode + "    \n";
            errMsg += "Category: " + errorType + "       \n";
            errMsg += "Message: " + args.ErrorMessage + "     \n";
 
            if (errorType == "ParserError") {
                errMsg += "File: " + args.xamlFile + "     \n";
                errMsg += "Line: " + args.lineNumber + "     \n";
                errMsg += "Position: " + args.charPosition + "     \n";
            }
            else if (errorType == "RuntimeError") {
                if (args.lineNumber != 0) {
                    errMsg += "Line: " + args.lineNumber + "     \n";
                    errMsg += "Position: " + args.charPosition + "     \n";
                }
                errMsg += "MethodName: " + args.methodName + "     \n";
            }
 
            //throw new Error(errMsg);
        }
        function onSourceDownloadProgressChanged(sender, args) {
            var progressText = sender.FindName("txtProgress");
            if (progressText != null) {
                progressText.Text = Math.floor(args.progress * 100) + "%";
            }
        }
        function LoadingSplashLoaded(sender) {
            sender.findName("LoadingAnimation").Begin();
        }
        function onLoadHandler() {
            /* To see the framerate displayed in the browser status bar 
            agControl = document.getElementById("SilverlightControl");
            agControl.settings.EnableFrameRateCounter = true;*/
        }