This is a migrated thread and some comments may be shown as answers.
A small list of things that I believe will be useful in rad Ajax "Prometheus"
7 Answers 109 Views
This is a migrated thread and some comments may be shown as answers.
surfer
Top achievements
Rank 1
surfer asked on 08 May 2007, 11:31 AM
Here is a short list of what I have been missing currently in rad Ajax Prometheus based on a aprox 1 week usage:

1) RenderMode property, similar to UpdatePanel. Should be able to propagate this down to all nested UpdatePanels.

2) OnAjaxSettingCreated server-side event with a parameter - the instance of the UpdatePanel created for the particular AjaxSetting. This way, I will be able to customize the UpdatePanel for each particular AjaxSeting. Also, the inititor control and the control to be updated should be available as paramenters to the event arguments, if possible.

3) Docs - download / upload files with rad Ajax "Prometheus", and in general, docs should be updated a lot since currently there are not that much starting points I can hook myself to.

Congrats on what appears to be a wonderful product.

Cheers
~Matt

7 Answers, 1 is accepted

Sort by
0
Vlad
Telerik team
answered on 08 May 2007, 02:23 PM
Great suggestions Matt!

Our developers took them by heart and they will probably make it even for Q1 SP1. We have updated your Telerik points for the involvement.
One questions though - can you share with us what should be updated in the download/upload articles in the documentation?

All the best,
Vlad
the Telerik team

Instantly find answers to your questions at the new Telerik Support Center
0
surfer
Top achievements
Rank 1
answered on 08 May 2007, 02:55 PM
Thanks, that sounds great, I will be looking forward to SP1 then!

And sorry about the docs remarks, they are not very clear really.

About file downloading, there is a topic in the Prometheus help indeed which discusses how to register javascript for downloading file instead of using Response.WriteFile. What I was maybe expecting as well was more information about the approach discussed here

http://www.telerik.com/community/code-library/submission/b311D-ttcbe.aspx

i.e. how to disable Ajax for a link/button which will initiate file download (this should be working with Prometheus I guess)

About file uploading, I was expecting some information about rad Upload and is it pluggable in the Prometheus framework (is it possible at all to use rad Upload, are there any workarounds, etc).

Thanks again!
0
surfer
Top achievements
Rank 1
answered on 08 May 2007, 03:15 PM
Oh, and while we are at this, I don't know if it makes sense to add OnAjaxSettingCreating event which could be cancellable, e.g., depending on some runtime criteria, you could disable the ajaxification for this particular settings.

But then again, I might be getting a little bit ahead of myself... since rad AjaxManager is a code-saving tool, maybe it does not make much sense to add so many code hooks available. So I might be completely wrong here :)
0
Vlad
Telerik team
answered on 08 May 2007, 03:44 PM
Hello Mat,

I think we can go even further :-). Here is a fresh code snipped from the "Prometheus" AJAX:
           public delegate void AjaxSettingCreatingDelegate(Object sender, AjaxSettingCreatingEventArgs e); 
        [Category("Action")] 
        public event AjaxSettingCreatingDelegate AjaxSettingCreating; 
        protected virtual void OnAjaxSettingCreating(AjaxSettingCreatingEventArgs args) 
        { 
            if (this.AjaxSettingCreating != null
            { 
                this.AjaxSettingCreating(this, args); 
            } 
        } 
 
        public delegate void AjaxSettingCreatedDelegate(Object sender, AjaxSettingCreatedEventArgs e); 
        [Category("Action")] 
        public event AjaxSettingCreatedDelegate AjaxSettingCreated; 
        protected virtual void OnAjaxSettingCreated(AjaxSettingCreatedEventArgs args) 
        { 
            if (this.AjaxSettingCreated != null
            { 
                this.AjaxSettingCreated(this, args); 
            } 
        } 
 
        public class AjaxSettingCreatingEventArgs : EventArgs 
        { 
            Control initator; 
            Control updated; 
            UpdatePanel updatePanel; 
            bool canceled = false
 
            public AjaxSettingCreatingEventArgs(Control initator, Control updated, UpdatePanel updatePanel) 
            { 
                this.initator = initator; 
                this.updated = updated; 
                this.updatePanel = updatePanel; 
            } 
 
            public bool Canceled 
            { 
                get 
                { 
                    return this.canceled; 
                } 
                set 
                { 
                    this.canceled = value; 
                } 
            } 
 
            public Control Initiator 
            { 
                get 
                { 
                    return this.initator; 
                } 
                set 
                { 
                    this.initator = value; 
                } 
            } 
 
            public Control Updated 
            { 
                get 
                { 
                    return this.updated; 
                } 
                set 
                { 
                    this.updated = value; 
                } 
           } 
 
            public UpdatePanel UpdatePanel 
            { 
                get 
                { 
                    return this.updatePanel; 
                } 
            } 
        } 
 
        public class AjaxSettingCreatedEventArgs : EventArgs 
        { 
            Control initator; 
            Control updated; 
            UpdatePanel updatePanel; 
 
            public AjaxSettingCreatedEventArgs(Control initator, Control updated, UpdatePanel updatePanel) 
            { 
                this.initator = initator; 
                this.updated = updated; 
                this.updatePanel = updatePanel; 
            } 
 
            public Control Initiator 
            { 
                get 
                { 
                    return this.initator; 
                } 
            } 
 
            public Control Updated 
            { 
                get 
                { 
                    return this.updated; 
                } 
            } 
 
            public UpdatePanel UpdatePanel 
            { 
                get 
                { 
                    return this.updatePanel; 
                } 
            } 
 
        } 

You can even redefine your initiator and updated controls in the AjaxSettingCreating event handler.

Let me know what you think.

Best regards,
Vlad
the Telerik team

Instantly find answers to your questions at the new Telerik Support Center
0
surfer
Top achievements
Rank 1
answered on 09 May 2007, 08:27 AM
Great! Looking forward to the next release! Do you already have some time estimate for the release?

Cheers,
~Matt
0
Konstantin Petkov
Telerik team
answered on 09 May 2007, 10:04 AM
Hi surfer,

The Service Pack is expected till the end of May.

Kind regards,
Konstantin Petkov
the Telerik team

Instantly find answers to your questions at the new Telerik Support Center
0
surfer
Top achievements
Rank 1
answered on 15 May 2007, 09:39 AM
Sorry for the hassle, but were you also able to implement RenderMode property for rad Ajax Manager Prometheus as well (or are you planning to) - so that RenderMode propagates down to all created UpdatePanels?

Granted, I can always hook the OnAjaxSettingCreating and set it there, but a top level property would be great too.

Thanks once again! Looking forward for the update next week.

~Matt
Tags
Ajax
Asked by
surfer
Top achievements
Rank 1
Answers by
Vlad
Telerik team
surfer
Top achievements
Rank 1
Konstantin Petkov
Telerik team
Share this question
or