Starting from Q1 2015, two or more RadInputManagers can be placed in the same page and they will work correctly. They will work in master/content page scenarios as well.
Posted on:01 Sep 2014 11:09
RadInputManagerProxy control, similar to the existing RadAjaxManagerProxy, will have more drawbacks, than positive capabilities. I will try to explain both positive and negative aspects of such control, and possible solutions. Please feel free to comment below and let us know in what way you are interested in using such a control.
The RadAjaxManagerProxy as it sounds by its name, should allow users to add declarative input settings for their inputs in their user controls and content pages, when the RadInputManager is placed inside the master page. It sounds good feature, but this is the only positive aspect of using such control.
The negative aspects are:
It will harden the coupling between the user controls and the host pages. Placing such proxy control in your user control will mean that you will need to place manager in each host page, where you want to use the user control.
Currently, if you add the settings programmatically, you could still have the possibility to check if the host page have manager, and skip adding the settings, if the host page does not have such manager. However, if you use a RadInputManagerProxy, you will get exception when the RadInputManager is missing. Hard coupling means more changes to be made each time you change something you your pages, more code to manage. Loose coupling will means easier swap of user controls and their master pages.
Using proxy control in more complex pages, where Ajax is enabled, will mean that you still have to ajaxify the RadInputManager, that is in the master page. So you still have to write server side logic to add the InputManager in the updated control collection of the AjaxManager.
Having RadInputManager, RadInputManagerProxy, RadAjaxManager and RadAjaxManagerProxy in page and user control, will need to add the RadInputManager inside the settings of the both RadAjaxManager and RadAjaxManagerProxy. As well as adding the RadInputManagerProxy in the settings of RadAjaxManagerProxy. This will require both server side and declarative logic and in my experience this will mean a lot of potential problems and errors the your code of your sites.
If you want to move TextBoxes from your MasterPage to your user control, you will need to rewrite the code (swap the manager with proxy, and still leave the manager in your master page).
We would like to ask you, how common for your sites is to have input form elements in both user controls and your master pages at the same time. And how common is to have more than one user controls with inputs, loaded in the same page? Such information will help us to determinate the need of such control. Any real life examples will help us for better designing of our suite.
Currently, you can add the settings programmatically. If you have only few TextBoxes, you could use the RadTextBox, RadNumericTextBox, etc. And if you have lots of them, I would suggest that you are adding them programmatically. And if you do so, the proxy control will not be suitable for you.
A possible feature that we could implement is to make possible two RadInputManagers to be placed in your page. If this happens, adding RadInputManager in your master page and in your content page at the same time will work well. If you are interested in such feature of the RadInputManager, please let us know.