Hi All
Ive tried creating a page with a RadSplitter and other stuff, and it's not going well
Issue 1 - The visual studio designer wont let me drop a RadSplitBar into the RadSplitter, it will only allow it to be dropped into a child
RadPane, and then tells me there is an error, because the splitter isnt supposed to be dropped into the RadPane - therefore I must manually cut and paste it into the right place in the code and not use the designer.
Issue 2 - the designer doesnt reflect any skin assignments (everything just looks crap)
Issue 3 - RadPanes that are supposed to be next to each other, will only site one on top of the other
The whole thing is a right mess, so I guess something must be wrong - or I've just wasted a huge amount of money for controls that dont really have any designer support
Dean
Ive tried creating a page with a RadSplitter and other stuff, and it's not going well
Issue 1 - The visual studio designer wont let me drop a RadSplitBar into the RadSplitter, it will only allow it to be dropped into a child
RadPane, and then tells me there is an error, because the splitter isnt supposed to be dropped into the RadPane - therefore I must manually cut and paste it into the right place in the code and not use the designer.
Issue 2 - the designer doesnt reflect any skin assignments (everything just looks crap)
Issue 3 - RadPanes that are supposed to be next to each other, will only site one on top of the other
The whole thing is a right mess, so I guess something must be wrong - or I've just wasted a huge amount of money for controls that dont really have any designer support
Dean
3 Answers, 1 is accepted
0
PureCode
Top achievements
Rank 2
answered on 29 Mar 2009, 11:03 PM
Hey Dean,
RadSplitter indeed does make a HUGE mess of your designer area, i never quite got why.
The easiest (albeit not that easy) way to make a layout (a simple three pane layout with two splitbars, vertically oriented) with RadSplitter in the VS designer is as follows:
Run the page and the layout will appear just as intended, while the design surface is a massive mess of RadPanes (in the wrong locations) and missing RadSplitBars.
That is how you can design a RadSplitter directly in the designer. Obviously, it is MUCH easier to just do it by hand in the source. I consider this a severe limitation on several levels. It messes up the designer terribly and it is a pain to just create a layout this way. It is unknown to me why Telerik designed this particular set of controls to behave this way. Within my company, we 're-coded' (extended is a better word) the RadSplitter and companion controls to have a decent design environment (same for RadDock actually) and added a bunch of extra functionality. While I have the resources to do this, I doubt most developers have the time, money and people to do so though.
Hope this helps you at least a little, my apologies for being the messenger of 'bad news' when it comes to RadSplitter and its designer behavior.
EDIT: After a quick look with Reflector, RadSplitBar (which derives from SplitterItem which, in turn, derives from RadWebControl) has no designer assigned to it, and there is no code in the rendering for 'design time', so without those (controldesigners produce design time HTML amongst many other things), it is no surprise that they go invisible when not selected. I can't find any reason why a set 'CollapseMode' would make it entirely unselectable in the designer environment though (this could be related to my rather idiotically behaving Visual Studio, hell, the damned program crashes every time I CLOSE it).
Regards,
Mike
RadSplitter indeed does make a HUGE mess of your designer area, i never quite got why.
The easiest (albeit not that easy) way to make a layout (a simple three pane layout with two splitbars, vertically oriented) with RadSplitter in the VS designer is as follows:
-
Step 1
Drop a RadSplitter control on the page.
-
Step 2
Drop a RadPane into the RadSplitter.
-
Step 3
Now it gets interesting. In order to drop a RadSplitBar in just the right location, you have to drag it onto the design service and more or less next to the RadPane. Instead of seeing the little black 'indicator bar' show up INSIDE the RadPane (which it does 99% of the time while moving the mouse around inside the RadSplitter and dragging a RadSplitBar control), it needs to appear NEXT to the RadPane (on the right side), you will see the 'indicator bar' move from inside (where it is as high as the inside of the pane) to the 'outside', basically hugging the side of the RadPane, the 'indicator bar' will at that point become the same height as the entire RadPane. If the RadPane is selected, this may be quite hard to see! Release the mouse and the RadSplitBar appears UNDER the RadPane, in a horizontal fashion (keep in mind that, by default, the RadSplitter is set to 'vertical' orientation, very odd behavior).
-
Step 3a - Issue alert!
With the resulting horizontal RadSplitBar selected, you can set the 'CollapseMode' in your properties window. The 'CollapseMode' for my simple layout would be 'Backward'. However, the moment you do this, the RadSplitBar vanishes entirely and will no longer be selectable within the designer (albeit that you can select it from the drop down in the properties window)! Also, the moment you de-select the RadSplitBar (by selecting another control, clicking somewhere empty, dragging a new control onto the design surface, etc), it will vanish entirely. As long as the 'CollapseMode' is NOT set, however, you can still select it by clicking in the area where it was visible before. I suggest to not set the 'CollapseMode' until you are done with the layout you are making.
-
Step 4
Drop another RadPane, underneath the horizontal RadSplitBar. If the 'indicator bar' appears on the right side of or underneath the horizontal (and possibly invisible, see step 3a) RadSplitBar, you can release the mouse and it will drop the new RadPane in the correct position.
-
Step 5
Perform steps 3 and 4 once more (with the same issues happening sadly). Resulting in three RadPanes and two (invisible) RadSplitBars.
-
Step 6
Select the top RadSplitBar (either choose it from the drop down in the properties window, or click in the area where it was visible before, the latter only when 'CollapseMode' has not been set). Set the 'CollapseMode' to 'Backward'.
-
Step 7
Select the bottom RadSplitBar (either choose it from the drop down in the properties window, or click in the area where it was visible before, the latter only when 'CollapseMode' has not been set). Set the 'CollapseMode' to 'Both'.
Run the page and the layout will appear just as intended, while the design surface is a massive mess of RadPanes (in the wrong locations) and missing RadSplitBars.
That is how you can design a RadSplitter directly in the designer. Obviously, it is MUCH easier to just do it by hand in the source. I consider this a severe limitation on several levels. It messes up the designer terribly and it is a pain to just create a layout this way. It is unknown to me why Telerik designed this particular set of controls to behave this way. Within my company, we 're-coded' (extended is a better word) the RadSplitter and companion controls to have a decent design environment (same for RadDock actually) and added a bunch of extra functionality. While I have the resources to do this, I doubt most developers have the time, money and people to do so though.
Hope this helps you at least a little, my apologies for being the messenger of 'bad news' when it comes to RadSplitter and its designer behavior.
EDIT: After a quick look with Reflector, RadSplitBar (which derives from SplitterItem which, in turn, derives from RadWebControl) has no designer assigned to it, and there is no code in the rendering for 'design time', so without those (controldesigners produce design time HTML amongst many other things), it is no surprise that they go invisible when not selected. I can't find any reason why a set 'CollapseMode' would make it entirely unselectable in the designer environment though (this could be related to my rather idiotically behaving Visual Studio, hell, the damned program crashes every time I CLOSE it).
Regards,
Mike
0
Dean
Top achievements
Rank 1
answered on 30 Mar 2009, 09:19 AM
Hi Mike
Thanks very much for all of your efforts explaining the issues with the designer regarding these controls.
I feel slightly peeved - I did a lot of research and came to the conclusion that the Rad controls were the best ones to get, because although Im an experienced developer who is used to (and often prefers) coding thingfs by hand, Im about to hand over some of the work to a far more junior guy who will rely on designer support.
The Rad controls are very expensive, and so far my experience with them has been a little dissapointing - not that I dont believe that well written apps using Rad controls would be great, but the learning curve seems unecessarily steep. The documentation is patchy, and the examples arent comprehensive enough - it seems that in order to use anything you need to fully inderstand everything, which is a real pain.
Thanks again for your help
Dean
Thanks very much for all of your efforts explaining the issues with the designer regarding these controls.
I feel slightly peeved - I did a lot of research and came to the conclusion that the Rad controls were the best ones to get, because although Im an experienced developer who is used to (and often prefers) coding thingfs by hand, Im about to hand over some of the work to a far more junior guy who will rely on designer support.
The Rad controls are very expensive, and so far my experience with them has been a little dissapointing - not that I dont believe that well written apps using Rad controls would be great, but the learning curve seems unecessarily steep. The documentation is patchy, and the examples arent comprehensive enough - it seems that in order to use anything you need to fully inderstand everything, which is a real pain.
Thanks again for your help
Dean
0
PureCode
Top achievements
Rank 2
answered on 30 Mar 2009, 08:08 PM
Hi Dean,
I understand your pain, we use a fair amount of interns in my company as well as hire a fair amount of junior developers (it is always easier to take a person with somewhat less experience and 'guide' them towards what one wants from an experienced developer, it is also cheaper).
We have been developing a massive framework (highly specific to the industry we cater to) for a number of years now, and while we do have a few (test/beta) versions running in production environments at customers, development never stops. When we started development on this, we decided to make three versions of the framework, each with the same functionality but using a different product suite. We settled on three major product suites, Telerik obviously being one of them.
While the Telerik suite was the hardest to implement (needing a lot of tweaking through extenders, overrides, etc in both the server controls as well as their javascript), it is by far the most transparent to work with. The learning curve at first is a little steep, but once you get the hang of the 'flow' within their assembly (Reflector is a must here), it is incredibly easy to use (and tweak).
There are a few areas where the Telerik suite is a bit eh.. 'unfinished', the designer mess with the RadSplitter being a good example. However, you won't find better support than these guys deliver, issues are often fixed very quickly and if an issue is somewhat more problematic to fix, they will work hard to find a work-around. The suite is fairly complete, and has some innovative features (RadDecorator, RadInputManager, etc) that substantially impact the amount of data one needs to throw to the client browser as well as speed up development.
You can also download frequent 'updates' between the usual quarterly releases which contain many bug fixes (but not new features), which is quite handy of course.
Other major suites seem to move more and more towards a 'we'll generate your application for you' sort of deal, which is exactly what I don't want out of a control suite. Telerik is nice and 'plain' when it comes to this and is flexible enough to bend to your will. The other two major suites we develop with contain substantial amounts of 'garbage' that is simply not needed unless you use their specific tools (like code generation and such).
I am a big fan of the K.I.S.S. (Keep It Simple Stupid) principle, and Telerik delivers on that front and are one of the few suite developers left that actually do keep things simple. Telerik prefers to release their somewhat more 'lets do all the work for you' features as seperate products, which is the way that should be done IMHO (although OpenAccess is definitely not my cup of tea, it is ridiculously hard to use, transparency is practically not there, etc, but they aquired this product from another company, so that explains that).
As for cost, I think Telerik is pretty much the cheapest of the major suites, one price, one year of support, no deployment restrictions, etc. For a freelance developer $999 (or something) may be a decent amount of cash to part with tho, but we always pass this cost on to our customers in the end anyway, even as a company of 36 people. Hell, a universal MSDN subscription is quite a bit more expensive, and a must for all developers who use Microsoft tools such as Visual Studio.
The documentation is, indeed, somewhat lacking. Doesn't go deep enough, too few examples within the documentation pages, etc. Compare it to MSDN though, we deal with the exact same issues there as well, and that is Microsoft, not a relatively small business like Telerik. Documentation is a major expense to create, and if you wants to do it correctly, you have to hire people specifically for this purpose (I employ two of these 'documentation experts', they're not cheap).
I think the example are okay, they show the functionality and no more. Most developers won't use more than the provided functionality, and if you want to pull more 'oomph' out of any product suite, you will have to get down and dirty with it in order to gain an understanding of the internals. But, you are correct, Teleriks products do require a bit more study than similar products.
Perhaps it is a good oppertunity for the 'far more junior' developer to get a little bit more 'hands on' with something like this, he/she is going to have to learn this part of our trade some day after all. It really isn't extremely complicated, play around a little with the controls, see where you end up with a 'wtf?' moment, consult the documentation, and, if needed, ask here on the forums, all the expertise needed is readily available and most people are more than willing to help out a fellow developer (people tend to become very fanatical about Telerik, which says something about Telerik as a business and is definitely not a bad thing).
I understand where you are coming from (we nearly dumped Telerik as one of our development suites a number of times due to similar feelings), but if you just hang in there, soak up the knowledge that is available all over this website, and gain the understanding you require while you use the controls then within no time I am sure you'll love using this product.
For normal, every day development (not something to the degree of the framework we are working on) your conclusion is in my opinion, after using three major suites for a number of years, spot on, Telerik, based on my reasonings above, their support, the community and, of course, the majority of their products, is the best choice. People do have different tastes however, so Teleriks products aren't for everyone, but that goes for almost everything in life.
Regards,
Mike
I understand your pain, we use a fair amount of interns in my company as well as hire a fair amount of junior developers (it is always easier to take a person with somewhat less experience and 'guide' them towards what one wants from an experienced developer, it is also cheaper).
We have been developing a massive framework (highly specific to the industry we cater to) for a number of years now, and while we do have a few (test/beta) versions running in production environments at customers, development never stops. When we started development on this, we decided to make three versions of the framework, each with the same functionality but using a different product suite. We settled on three major product suites, Telerik obviously being one of them.
While the Telerik suite was the hardest to implement (needing a lot of tweaking through extenders, overrides, etc in both the server controls as well as their javascript), it is by far the most transparent to work with. The learning curve at first is a little steep, but once you get the hang of the 'flow' within their assembly (Reflector is a must here), it is incredibly easy to use (and tweak).
There are a few areas where the Telerik suite is a bit eh.. 'unfinished', the designer mess with the RadSplitter being a good example. However, you won't find better support than these guys deliver, issues are often fixed very quickly and if an issue is somewhat more problematic to fix, they will work hard to find a work-around. The suite is fairly complete, and has some innovative features (RadDecorator, RadInputManager, etc) that substantially impact the amount of data one needs to throw to the client browser as well as speed up development.
You can also download frequent 'updates' between the usual quarterly releases which contain many bug fixes (but not new features), which is quite handy of course.
Other major suites seem to move more and more towards a 'we'll generate your application for you' sort of deal, which is exactly what I don't want out of a control suite. Telerik is nice and 'plain' when it comes to this and is flexible enough to bend to your will. The other two major suites we develop with contain substantial amounts of 'garbage' that is simply not needed unless you use their specific tools (like code generation and such).
I am a big fan of the K.I.S.S. (Keep It Simple Stupid) principle, and Telerik delivers on that front and are one of the few suite developers left that actually do keep things simple. Telerik prefers to release their somewhat more 'lets do all the work for you' features as seperate products, which is the way that should be done IMHO (although OpenAccess is definitely not my cup of tea, it is ridiculously hard to use, transparency is practically not there, etc, but they aquired this product from another company, so that explains that).
As for cost, I think Telerik is pretty much the cheapest of the major suites, one price, one year of support, no deployment restrictions, etc. For a freelance developer $999 (or something) may be a decent amount of cash to part with tho, but we always pass this cost on to our customers in the end anyway, even as a company of 36 people. Hell, a universal MSDN subscription is quite a bit more expensive, and a must for all developers who use Microsoft tools such as Visual Studio.
The documentation is, indeed, somewhat lacking. Doesn't go deep enough, too few examples within the documentation pages, etc. Compare it to MSDN though, we deal with the exact same issues there as well, and that is Microsoft, not a relatively small business like Telerik. Documentation is a major expense to create, and if you wants to do it correctly, you have to hire people specifically for this purpose (I employ two of these 'documentation experts', they're not cheap).
I think the example are okay, they show the functionality and no more. Most developers won't use more than the provided functionality, and if you want to pull more 'oomph' out of any product suite, you will have to get down and dirty with it in order to gain an understanding of the internals. But, you are correct, Teleriks products do require a bit more study than similar products.
Perhaps it is a good oppertunity for the 'far more junior' developer to get a little bit more 'hands on' with something like this, he/she is going to have to learn this part of our trade some day after all. It really isn't extremely complicated, play around a little with the controls, see where you end up with a 'wtf?' moment, consult the documentation, and, if needed, ask here on the forums, all the expertise needed is readily available and most people are more than willing to help out a fellow developer (people tend to become very fanatical about Telerik, which says something about Telerik as a business and is definitely not a bad thing).
I understand where you are coming from (we nearly dumped Telerik as one of our development suites a number of times due to similar feelings), but if you just hang in there, soak up the knowledge that is available all over this website, and gain the understanding you require while you use the controls then within no time I am sure you'll love using this product.
For normal, every day development (not something to the degree of the framework we are working on) your conclusion is in my opinion, after using three major suites for a number of years, spot on, Telerik, based on my reasonings above, their support, the community and, of course, the majority of their products, is the best choice. People do have different tastes however, so Teleriks products aren't for everyone, but that goes for almost everything in life.
Regards,
Mike