Proprietà Microsoft.Reporting.WebFormsClient.ReportViewer.isLoading
Ottiene un valore Boolean che indica se la pagina Web sta eseguendo un postback o se il controllo lato client sta caricando contenuto.
Nota
Per ottenere o impostare valori di proprietà per proprietà API client, è necessario chiamare metodi della funzione di accesso alle proprietà denominati con i prefissi get_ e set_.
Sintassi
var loading = $find(viewerId).get_isLoading();
Valore restituito
true se la pagina Web sta eseguendo un postback o se il controllo lato client sta caricando contenuto; in caso contrario, false.
Osservazioni
Quando il controllo lato client sta caricando contenuto, potrebbe essere in corso un postback, ad esempio l'aggiornamento di un rapporto con i nuovi dati, oppure il caricamento del contenuto nel browser dopo un postback. Questa proprietà non genera un'eccezione quando la pagina Web o il controllo lato client sta eseguendo un postback. Utilizzare questa proprietà per controllare se si sta aggiornando il rapporto o la pagina e se è possibile accedere ai metodi e alle proprietà.
Se si implementa una barra degli strumenti personalizzata, è possibile utilizzare questa proprietà per passare tra lo stato abilitato e quello disabilitato degli elementi della barra degli strumenti. È ad esempio possibile aggiungere un riferimento a script al codice JavaScript seguente nel controllo ScriptManager per passare tra lo stato abilitato e quello disabilitato di un pulsante esterno.
Nota
Il controllo ScriptManager garantisce che lo script a cui si fa riferimento venga eseguito prima del caricamento del controllo lato client. Ciò consente al gestore eventi di gestire tutte le modifiche alla proprietà isLoading.
Sys.Application.add_load(function () {
$find("ReportViewer1").add_propertyChanged(viewerPropertyChanged);
});
function viewerPropertyChanged(sender, e) {
if (e.get_propertyName() === "isLoading") {
var viewer = $find("ReportViewer1");
var button = document.getElementById("Button1");
button.disabled = viewer.get_isLoading();
}
}
Nel caso in cui il controllo lato client stia eseguendo un postback a esecuzione prolungata, è possibile utilizzare il metodo Sys.WebForms.PageRequestManager.abortPostBack per annullare il postback. Ad esempio:
function cancelPostBack() {
var prm = Sys.WebForms.PageRequestManager.getInstance();
if (prmn.get_isInAsyncPostBack()) {
prm.abortPostBack();
}
}
Vedere anche
Riferimento
Classe Microsoft.Reporting.WebFormsClient.ReportViewer