This is a migrated thread and some comments may be shown as answers.

[Solved] Is possible dynamic create mvc component from c# source code without view or HtmlHelper ?

1 Answer 52 Views
General Discussions
This is a migrated thread and some comments may be shown as answers.
This question is locked. New answers and comments are not allowed.
Ferruh Köroglu
Top achievements
Rank 1
Ferruh Köroglu asked on 05 Apr 2011, 03:22 PM

I'm testing a few asp.net mvc framework,
Other Mvc Framework is supporting "Dynamic create Mvc component and generate html, without HtmlHelper".
But Telerik mvc is to hold necessary for a view !

I want to obtain generated html code from mvc component,  Is Possible ???

Under Code giving error message, because code want to HtmlHelper; Please Help about this subject !

public string GetTelerikMenu()
{
  // Sample Telerik Menu...
  MenuBuilder mnuBuilder = Telerik.Web.Mvc.UI.HtmlHelperExtension.Telerik(null).Menu();
  mnuBuilder.Items(mnuItem =>
                  {
                    mnuItem.Add().Text("Home")
                        .Items(item =>
                        {
                          item.Add().Text("News").Items(itm =>
                                                        {
                                                          itm.Add().Text("For Developers");
                                                          itm.Add().Text("WebSite News");
                                                        });
                          item.Add().Text("Our Mission");
                          item.Add().Text("Our Customers");
                        });
                    mnuItem.Add().Text("Knowledge Base");
                    mnuItem.Add().Text("Documentation");
                    mnuItem.Add().Text("Support Center");
                    mnuItem.Add().Text("Newsgroups");
                    mnuItem.Add().Text("Best Practicies");
                  }
 
    );
   
  return mnuBuilder.ToHtmlString();
}

1 Answer, 1 is accepted

Sort by
0
Diego
Top achievements
Rank 1
answered on 20 Apr 2011, 06:30 PM
Thanks, for your code.
The method is 98% correct, you simply need to define your own HTMLHelper:

It's a normal class definition which expose static string members

public static class MenuBuilderHelper
    {
         
        public static string RenderMenu(this System.Web.Mvc.HtmlHelper html)
        {
MenuBuilder mnuBuilder = Telerik.Web.Mvc.UI.HtmlHelperExtension.Telerik(html).Menu();
... etc

in the aspx page remember to add the proper namespace.


Ciao
Diego
Tags
General Discussions
Asked by
Ferruh Köroglu
Top achievements
Rank 1
Answers by
Diego
Top achievements
Rank 1
Share this question
or