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

[Solved] How to put an editor form inside a TabStrip ?

2 Answers 160 Views
TabStrip
This is a migrated thread and some comments may be shown as answers.
This question is locked. New answers and comments are not allowed.
David
Top achievements
Rank 1
David asked on 13 Dec 2010, 12:47 AM
I am trying to put an edit form inside a TabStrip control.

So I have an edit form for one table in my database, and I have split the input's over tabs, for example:

Details (tab 1)
field: Name
field: Short Description

Apperance (tab 2)
field: Color
field: Shape

How can I put the edit form part inside the TabStrip control ? The question is where do you put  the Html.BeginForm() part ?

<% using (Html.BeginForm()) {%>
                            <%: Html.ValidationSummary(true) %>
<% using (Html.BeginForm()) {%>
<%: Html.ValidationSummary(true) %>

See:

<% Html.Telerik().TabStrip()
                .Name("TabStrip")
                .Items(tabstrip =>
                {
                    tabstrip.Add()
                        .Text("Details")
                        .ImageUrl("~/Content/PanelBar/details.png")
                        .Content(() =>
                        {%>
                        <br />
 
                        <% using (Html.BeginForm()) {%>
                            <%: Html.ValidationSummary(true) %>
 
                        <div class="editor-label">
                            <%: Html.LabelFor(model => model.Name) %>
                            <%: Html.TextBoxFor(model => model.Name, new { @class = "edit" }) %>
                            <%: Html.ValidationMessageFor(model => model.Name) %>
                        </div>
                        <div class="editor-label">
                            <%: Html.LabelFor(model => model.ShortDescription) %>
                            <%: Html.TextBoxFor(model => model.ShortDescription, new { @class = "edit" })%>
                            <%: Html.ValidationMessageFor(model => model.ShortDescription)%>
                        </div>
                         
                        ...

Then I need to put it more than once. It doesn't seem to work if I put that outside (surrounding) the entire TabStrip.

<% Html.Telerik().TabStrip()
                .Name("TabStrip")
                .Items(tabstrip =>
                {
                    tabstrip.Add()
                        .Text("Details")
                        .ImageUrl("~/Content/PanelBar/details.png")
                        .Content(() =>
                        {%>
                        <br />

                        <% using (Html.BeginForm()) {%>
                            <%: Html.ValidationSummary(true) %>

                        <div class="editor-label">
                            <%: Html.LabelFor(model => model.EquipmentID) %>
                            <%: Html.TextBoxFor(model => model.EquipmentID, new { @class = "edit" }) %>
                            <%: Html.ValidationMessageFor(model => model.EquipmentID) %>
                        </div>
                        <div class="editor-label">
                            <%: Html.LabelFor(model => model.Equipment1) %>
                            <%: Html.TextBoxFor(model => model.Equipment1, new { @class = "edit" })%>
                            <%: Html.ValidationMessageFor(model => model.Equipment1)%>
                        </div>
<% Html.Telerik().TabStrip()
                .Name("TabStrip")
                .Items(tabstrip =>
                {
                    tabstrip.Add()
                        .Text("Details")
                        .ImageUrl("~/Content/PanelBar/details.png")
                        .Content(() =>
                        {%>
                        <br />

                        <% using (Html.BeginForm()) {%>
                            <%: Html.ValidationSummary(true) %>

                        <div class="editor-label">
                            <%: Html.LabelFor(model => model.EquipmentID) %>
                            <%: Html.TextBoxFor(model => model.EquipmentID, new { @class = "edit" }) %>
                            <%: Html.ValidationMessageFor(model => model.EquipmentID) %>
                        </div>
                        <div class="editor-label">
                            <%: Html.LabelFor(model => model.Equipment1) %>
                            <%: Html.TextBoxFor(model => model.Equipment1, new { @class = "edit" })%>
                            <%: Html.ValidationMessageFor(model => model.Equipment1)%>
                        </div>
<% Html.Telerik().TabStrip()
                .Name("TabStrip")
                .Items(tabstrip =>
                {
                    tabstrip.Add()
                        .Text("Details")
                        .ImageUrl("~/Content/PanelBar/details.png")
                        .Content(() =>
                        {%>
                        <br />

                        <% using (Html.BeginForm()) {%>
                            <%: Html.ValidationSummary(true) %>

                        <div class="editor-label">
                            <%: Html.LabelFor(model => model.EquipmentID) %>
                            <%: Html.TextBoxFor(model => model.EquipmentID, new { @class = "edit" }) %>
                            <%: Html.ValidationMessageFor(model => model.EquipmentID) %>
                        </div>
                        <div class="editor-label">
                            <%: Html.LabelFor(model => model.Equipment1) %>
                            <%: Html.TextBoxFor(model => model.Equipment1, new { @class = "edit" })%>
                            <%: Html.ValidationMessageFor(model => model.Equipment1)%>
                        </div>
<% Html.Telerik().TabStrip()
                .Name("TabStrip")
                .Items(tabstrip =>
                {
                    tabstrip.Add()
                        .Text("Details")
                        .ImageUrl("~/Content/PanelBar/details.png")
                        .Content(() =>
                        {%>
                        <br />

                        <% using (Html.BeginForm()) {%>
                            <%: Html.ValidationSummary(true) %>

                        <div class="editor-label">
                            <%: Html.LabelFor(model => model.EquipmentID) %>
                            <%: Html.TextBoxFor(model => model.EquipmentID, new { @class = "edit" }) %>
                            <%: Html.ValidationMessageFor(model => model.EquipmentID) %>
                        </div>
                        <div class="editor-label">
                            <%: Html.LabelFor(model => model.Equipment1) %>
                            <%: Html.TextBoxFor(model => model.Equipment1, new { @class = "edit" })%>
                            <%: Html.ValidationMessageFor(model => model.Equipment1)%>
                        </div>
<% Html.Telerik().TabStrip()
                .Name("TabStrip")
                .Items(tabstrip =>
                {
                    tabstrip.Add()
                        .Text("Details")
                        .ImageUrl("~/Content/PanelBar/details.png")
                        .Content(() =>
                        {%>
                        <br />

                        <% using (Html.BeginForm()) {%>
                            <%: Html.ValidationSummary(true) %>

                        <div class="editor-label">
                            <%: Html.LabelFor(model => model.EquipmentID) %>
                            <%: Html.TextBoxFor(model => model.EquipmentID, new { @class = "edit" }) %>
                            <%: Html.ValidationMessageFor(model => model.EquipmentID) %>
                        </div>
                        <div class="editor-label">
                            <%: Html.LabelFor(model => model.Equipment1) %>
                            <%: Html.TextBoxFor(model => model.Equipment1, new { @class = "edit" })%>
                            <%: Html.ValidationMessageFor(model => model.Equipment1)%>
                        </div>
<% Html.Telerik().TabStrip()
                .Name("TabStrip")
                .Items(tabstrip =>
                {
                    tabstrip.Add()
                        .Text("Details")
                        .ImageUrl("~/Content/PanelBar/details.png")
                        .Content(() =>
                        {%>
                        <br />

                        <% using (Html.BeginForm()) {%>
                            <%: Html.ValidationSummary(true) %>

                        <div class="editor-label">
                            <%: Html.LabelFor(model => model.EquipmentID) %>
                            <%: Html.TextBoxFor(model => model.EquipmentID, new { @class = "edit" }) %>
                            <%: Html.ValidationMessageFor(model => model.EquipmentID) %>
                        </div>
                        <div class="editor-label">
                            <%: Html.LabelFor(model => model.Equipment1) %>
                            <%: Html.TextBoxFor(model => model.Equipment1, new { @class = "edit" })%>
                            <%: Html.ValidationMessageFor(model => model.Equipment1)%>
                        </div>
<% Html.Telerik().TabStrip()
                .Name("TabStrip")
                .Items(tabstrip =>
                {
                    tabstrip.Add()
                        .Text("Details")
                        .ImageUrl("~/Content/PanelBar/details.png")
                        .Content(() =>
                        {%>
                        <br />

                        <% using (Html.BeginForm()) {%>
                            <%: Html.ValidationSummary(true) %>

                        <div class="editor-label">
                            <%: Html.LabelFor(model => model.EquipmentID) %>
                            <%: Html.TextBoxFor(model => model.EquipmentID, new { @class = "edit" }) %>
                            <%: Html.ValidationMessageFor(model => model.EquipmentID) %>
                        </div>
                        <div class="editor-label">
                            <%: Html.LabelFor(model => model.Equipment1) %>
                            <%: Html.TextBoxFor(model => model.Equipment1, new { @class = "edit" })%>
                            <%: Html.ValidationMessageFor(model => model.Equipment1)%>
                        </div>
<% Html.Telerik().TabStrip()
                .Name("TabStrip")
                .Items(tabstrip =>
                {
                    tabstrip.Add()
                        .Text("Details")
                        .ImageUrl("~/Content/PanelBar/details.png")
                        .Content(() =>
                        {%>
                        <br />

                        <% using (Html.BeginForm()) {%>
                            <%: Html.ValidationSummary(true) %>

                        <div class="editor-label">
                            <%: Html.LabelFor(model => model.EquipmentID) %>
                            <%: Html.TextBoxFor(model => model.EquipmentID, new { @class = "edit" }) %>
                            <%: Html.ValidationMessageFor(model => model.EquipmentID) %>
                        </div>
                        <div class="editor-label">
                            <%: Html.LabelFor(model => model.Equipment1) %>
                            <%: Html.TextBoxFor(model => model.Equipment1, new { @class = "edit" })%>
                            <%: Html.ValidationMessageFor(model => model.Equipment1)%>
                        </div>
<% Html.Telerik().TabStrip()
                .Name("TabStrip")
                .Items(tabstrip =>
                {
                    tabstrip.Add()
                        .Text("Details")
                        .ImageUrl("~/Content/PanelBar/details.png")
                        .Content(() =>
                        {%>
                        <br />

                        <% using (Html.BeginForm()) {%>
                            <%: Html.ValidationSummary(true) %>

                        <div class="editor-label">
                            <%: Html.LabelFor(model => model.EquipmentID) %>
                            <%: Html.TextBoxFor(model => model.EquipmentID, new { @class = "edit" }) %>
                            <%: Html.ValidationMessageFor(model => model.EquipmentID) %>
                        </div>
                        <div class="editor-label">
                            <%: Html.LabelFor(model => model.Equipment1) %>
                            <%: Html.TextBoxFor(model => model.Equipment1, new { @class = "edit" })%>
                            <%: Html.ValidationMessageFor(model => model.Equipment1)%>
                        </div>
<% Html.Telerik().TabStrip()
                .Name("TabStrip")
                .Items(tabstrip =>
                {
                    tabstrip.Add()
                        .Text("Details")
                        .ImageUrl("~/Content/PanelBar/details.png")
                        .Content(() =>
                        {%>
                        <br />

                        <% using (Html.BeginForm()) {%>
                            <%: Html.ValidationSummary(true) %>

                        <div class="editor-label">
                            <%: Html.LabelFor(model => model.EquipmentID) %>
                            <%: Html.TextBoxFor(model => model.EquipmentID, new { @class = "edit" }) %>
                            <%: Html.ValidationMessageFor(model => model.EquipmentID) %>
                        </div>
                        <div class="editor-label">
                            <%: Html.LabelFor(model => model.Equipment1) %>
                            <%: Html.TextBoxFor(model => model.Equipment1, new { @class = "edit" })%>
                            <%: Html.ValidationMessageFor(model => model.Equipment1)%>
                        </div>
<% Html.Telerik().TabStrip()
                .Name("TabStrip")
                .Items(tabstrip =>
                {
                    tabstrip.Add()
                        .Text("Details")
                        .ImageUrl("~/Content/PanelBar/details.png")
                        .Content(() =>
                        {%>
                        <br />

                        <% using (Html.BeginForm()) {%>
                            <%: Html.ValidationSummary(true) %>

                        <div class="editor-label">
                            <%: Html.LabelFor(model => model.EquipmentID) %>
                            <%: Html.TextBoxFor(model => model.EquipmentID, new { @class = "edit" }) %>
                            <%: Html.ValidationMessageFor(model => model.EquipmentID) %>
                        </div>
                        <div class="editor-label">
                            <%: Html.LabelFor(model => model.Equipment1) %>
                            <%: Html.TextBoxFor(model => model.Equipment1, new { @class = "edit" })%>
                            <%: Html.ValidationMessageFor(model => model.Equipment1)%>
                        </div>
<% Html.Telerik().TabStrip()
                .Name("TabStrip")
                .Items(tabstrip =>
                {
                    tabstrip.Add()
                        .Text("Details")
                        .ImageUrl("~/Content/PanelBar/details.png")
                        .Content(() =>
                        {%>
                        <br />

                        <% using (Html.BeginForm()) {%>
                            <%: Html.ValidationSummary(true) %>

                        <div class="editor-label">
                            <%: Html.LabelFor(model => model.EquipmentID) %>
                            <%: Html.TextBoxFor(model => model.EquipmentID, new { @class = "edit" }) %>
                            <%: Html.ValidationMessageFor(model => model.EquipmentID) %>
                        </div>
                        <div class="editor-label">
                            <%: Html.LabelFor(model => model.Equipment1) %>
                            <%: Html.TextBoxFor(model => model.Equipment1, new { @class = "edit" })%>
                            <%: Html.ValidationMessageFor(model => model.Equipment1)%>
                        </div>
<% Html.Telerik().TabStrip()
                .Name("TabStrip")
                .Items(tabstrip =>
                {
                    tabstrip.Add()
                        .Text("Details")
                        .ImageUrl("~/Content/PanelBar/details.png")
                        .Content(() =>
                        {%>
                        <br />

                        <% using (Html.BeginForm()) {%>
                            <%: Html.ValidationSummary(true) %>

                        <div class="editor-label">
                            <%: Html.LabelFor(model => model.EquipmentID) %>
                            <%: Html.TextBoxFor(model => model.EquipmentID, new { @class = "edit" }) %>
                            <%: Html.ValidationMessageFor(model => model.EquipmentID) %>
                        </div>
                        <div class="editor-label">
                            <%: Html.LabelFor(model => model.Equipment1) %>
                            <%: Html.TextBoxFor(model => model.Equipment1, new { @class = "edit" })%>
                            <%: Html.ValidationMessageFor(model => model.Equipment1)%>
                        </div>

2 Answers, 1 is accepted

Sort by
0
David
Top achievements
Rank 1
answered on 13 Dec 2010, 05:23 AM
Please excuse me, after further "stuffing around" I was able to successfully but the BeginForm completely surrounding (outside) the TabStrip.

<% using (Html.BeginForm()) {%>
<%: Html.ValidationSummary(true) %>
0
Nahuel
Top achievements
Rank 1
answered on 14 Apr 2011, 08:35 PM
David im trying to surround the tabstrip like you did but it ends with an exception saying something about the Write method cant take 0 arguments... do you know how to solve this?
Tags
TabStrip
Asked by
David
Top achievements
Rank 1
Answers by
David
Top achievements
Rank 1
Nahuel
Top achievements
Rank 1
Share this question
or