Skip Navigation LinksHome / Community & Support / Developer Productivity Tools Forums / Telerik MVC Extensions (superseded) > Slider > Slider as Editor requires 'Static' Name

Not answered Slider as Editor requires 'Static' Name

Feed from this thread
  • Posted on May 21, 2011 (permalink)

    Hello,

    I like the Telerik slider for it's simplicity.

    So now I try to use the Slider as an Editor:

    <%

     

    @ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl<int?>" %>

     

     

    <%

     

    = Html.Telerik().Slider<int>()

     

     

     

     

    .HtmlAttributes(new { style = "width:100" })

     

     

    .Min(0)

     

    .Max(10)

     

    .ShowButtons(

     

    true)

     

     

    .Value(Model)

     

    %>

    But when I run this, I get a runtime exception:

    System.ArgumentException was unhandled by user code
      Message=Value cannot be null or empty.
    Parameter name: expression
      Source=System.Web.Mvc
      ParamName=expression
      StackTrace:
           at System.Web.Mvc.ViewDataDictionary.GetViewDataInfo(String expression)
           at System.Web.Mvc.ViewDataDictionary.Eval(String expression)
           at Telerik.Web.Mvc.UI.InputComponentExtensions.GetValue[T](IInputComponent`1 instance, Func`2 converter)
           at Telerik.Web.Mvc.UI.Slider`1.WriteHtml(HtmlTextWriter writer)
           at Telerik.Web.Mvc.UI.ViewComponentBase.ToHtmlString()
           at Telerik.Web.Mvc.UI.ViewComponentBuilderBase`2.ToHtmlString()
           at Telerik.Web.Mvc.UI.ViewComponentBuilderBase`2.ToString()
           at System.IO.TextWriter.Write(Object value)
           at System.Web.Mvc.ViewPage.SwitchWriter.Write(Object value)
           at System.Web.UI.HtmlTextWriter.Write(Object value)
           at ASP.views_shared_editortemplates_slider_ascx.__Render__control1(HtmlTextWriter __w, Control parameterContainer) in c:\Data\Semac\Development\FeasibilityStudy\SmartEnergySemacClient\MvcApplication2\MvcApplication2\Views\Shared\EditorTemplates\Slider.ascx:line 2
           at System.Web.UI.Control.RenderChildrenInternal(HtmlTextWriter writer, ICollection children)
           at System.Web.UI.Control.RenderChildren(HtmlTextWriter writer)
           at System.Web.UI.Control.Render(HtmlTextWriter writer)
           at System.Web.UI.Control.RenderControlInternal(HtmlTextWriter writer, ControlAdapter adapter)
           at System.Web.UI.Control.RenderControl(HtmlTextWriter writer, ControlAdapter adapter)
           at System.Web.UI.Control.RenderControl(HtmlTextWriter writer)
           at System.Web.UI.Control.RenderChildrenInternal(HtmlTextWriter writer, ICollection children)
           at System.Web.UI.Control.RenderChildren(HtmlTextWriter writer)
           at System.Web.UI.Page.Render(HtmlTextWriter writer)
           at System.Web.Mvc.ViewPage.Render(HtmlTextWriter writer)
           at System.Web.UI.Control.RenderControlInternal(HtmlTextWriter writer, ControlAdapter adapter)
           at System.Web.UI.Control.RenderControl(HtmlTextWriter writer, ControlAdapter adapter)
           at System.Web.UI.Control.RenderControl(HtmlTextWriter writer)
           at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
      InnerException:


    But when i add a static name (same name as the property in the viewmodel) to the editor:

    .Name("MySliderField")

    the slider works fine.

    My issues with this are:
     - adding a static name forces me to use this name (MySliderField) in each viewmodel
     - there can only be one slider on each viewmodel (property names are unique in a class in C#)
     - other editors like the IntegerTextBox do not require a static name
     
    Is there a fix for this?

     

    Reply

  • Posted on May 21, 2011 (permalink)

    Found it.

    I used the more generic Name found on other editors and now it works fine.

     

    <%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl<int?>" %>
    <%= Html.Telerik().Slider<int>()
            .Name(ViewData.TemplateInfo.GetFullHtmlFieldName(string.Empty))
            .HtmlAttributes(new { style = "width:100" })
            .Min(0)
            .Max(10)
            .ShowButtons(true)
            .Value(Model)
    %>

    Reply

Back to Top

Skip Navigation LinksHome / Community & Support / Developer Productivity Tools Forums / Telerik MVC Extensions (superseded) > Slider > Slider as Editor requires 'Static' Name
Related resources for "Slider as Editor requires 'Static' Name"

ASP.NET MVC Slider Features  |  Documentation  |  Demos  |  Telerik TV ]