
ASPxClientDataView = _aspxCreateClass(ASPxClientControl, {
    constructor: function(name) {
        this.constructor.prototype.constructor.call(this, name);    
    },    
    
    GetPageIndexInputElement: function(){
        return _aspxGetElementById(this.name + "PI");
    },
    GetContentCell: function(){
        return this.GetChild("_CCell");
    }, 
    GetItemsCell: function(){
        return this.GetChild("_ICell");
    },
    DoPagerClick: function(value) {
        var inputElement = this.GetPageIndexInputElement();
        if(inputElement != null) {
            this.CreateLoadingPanelInsideContainer(this.GetItemsCell());
            this.CreateCallback(inputElement.value + __aspxCallBackSeparator + value);
        }
    },
    CustomCallback: function(args) {
        if(!_aspxIsExists(this.callBack)) {
            if(this.isInitialized)
                this.SendPostBack(args);
            return;
        }
        this.CreateCallback(args);
    },
    OnCallback: function(result) {
        var pos = result.indexOf(__aspxCallBackSeparator);
        if(pos > -1){
            var inputElement = this.GetPageIndexInputElement();
            if(inputElement != null) 
                inputElement.value = parseInt(result.substr(0, pos));
            var element = this.GetContentCell();
            if(element != null) {
                result = result.substring(pos + __aspxCallBackSeparator.length);    
                element.innerHTML = result;
            }
        }
    },
    OnCallbackError: function(result){
        var element = this.GetContentCell();
        if(element != null) element.innerHTML = result;    
    },
    DoBeginCallback: function(){
        this.CreateLoadingPanelInsideContainer(this.GetItemsCell());
        ASPxClientControl.prototype.DoBeginCallback.call(this);
    },
    PerformCallback: function(parameter) {
        this.CustomCallback(parameter);
    }
});

function aspxDVPagerClick(name, value) {
    var dv = aspxGetControlCollection().Get(name);
    if(dv != null) dv.DoPagerClick(value);
}