Unable to displayed the custom form field?

 

Hi Guys,

       As per requirement i want to create my own form field,but when i drag and drop field its not displayed here is my code

namespace EpiserverSite5.Models.Blocks
{
  [ContentType(DisplayName = "CustomTextBoxElementBlock", GUID = "c5230b6e-7da0-4400-942c-0f33b6f801b6", Description = "")]
  public class CustomTextBoxElementBlock : TextboxElementBlock
  {
   [Display(
   Name = "Max length",
   Description = "The maximum number of characters.",
   Order = 2999)]
   public virtual int? MaxLength { get; set; }

  }
}

CustomTextBoxElementBlock.cshtml

@model EpiserverSite5.Models.Blocks.CustomTextBoxElementBlock
@using System.Web.Mvc
@using EPiServer.Forms.Helpers.Internal
@using EPiServer.Forms.Implementation.Elements
@using EPiServer.Forms.EditView.Internal
@using EPiServer.ServiceLocation

@{
    var errorMessage = Model.GetErrorMessage();
    var errorStyle = string.IsNullOrEmpty(errorMessage) ? " display:none" : string.Empty;
    var validationService = ServiceLocator.Current.GetInstance<ValidationService>();
  }
      <div class="Form__Element FormTextbox @validationService.GetValidationCssClasses(Model)"
       data-f-element-name="@Model.FormElement.ElementName" data_f_type="textbox">
      <label for="@Model.FormElement.Guid" class="Form__Element__Caption">@Model.Label</label>
      <input name="@Model.FormElement.ElementName"
      id="@Model.FormElement.Guid"
     type="text"
      class="FormTextbox FormTextbox__Input @Model.FormElement"
     placeholder="@Model.PlaceHolder"
    value="@Model.GetDefaultValue()"
    @Html.Raw(Model.AttributesString) />
     <span data-epiforms-linked-name="@Model.FormElement.ElementName"
     class="Form__Element__ValidationError"
    style="@errorStyle">@errorMessage</span>
    @Model.RenderDataList()
</div>

When i drag form fied into form container,i get this  error

Error:

The  'CustomTextBoxElementBlock' can not  be displayed

Can any one help me out of this.

Thanks,

Kartheek

#187109 Jan 12, 2018 6:14
  • This message was deleted by Bob Bolt at Jan 12, 2018 16:47.
  • Member since: 2008
     

    Hi Kartheek 

    I wrote about creating a custom form field for Episerver Forms here:

    https://www.david-tec.com/2016/01/building-out-a-custom-form-element-with-the-new-episerver-forms/

    Let me know if it helps.

    David 

    #187135 Jan 12, 2018 17:27
  •  

    Hi David,

        i have already gone through the link,but the example is not working as expected.can you suggest any other referance.

    Thanks,

    Kartheek

    #187261 Jan 17, 2018 7:14
  • Member since: 2010
     

    Hey, Kartheek,

    I have an email element block. It is built as an Add-On, but you could take it for inspiration.

    Btw, where did you place your cshtml? 

    BR,
    Marija

    #187265 Jan 17, 2018 10:36
  •  

    Hi Marija Jemuovic,

           Thanks for your time consideration of this matter,i placed my .cshtml in Shared-->blocks-->Myview.cshtml.

    Thanks,

    Kartheek.

    #187267 Jan 17, 2018 11:08
  • Member since: 2010
     

    Hey,

    Does it work if you move it to Views / Shared / ElementBlocks?

    BR,
    Marija

    #187271 Jan 17, 2018 14:06
  •  

    Thanks Marija Jemuovic,

       

         Your reference email block element is helpfull for creating textbox.

    Thanks,

    Kartheek.

    #187365 Jan 22, 2018 6:14