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

Binding DropdownList in edit/insert mode in Grid

0 Answers 83 Views
Grid
This is a migrated thread and some comments may be shown as answers.
This question is locked. New answers and comments are not allowed.
Chintan Shah
Top achievements
Rank 2
Chintan Shah asked on 12 Dec 2011, 02:45 PM
Hello,
I am using MVC 3 and Razor as view engine. I followed the steps as in the respective demo application for binding DropdownList in my telerik grid.

Code in my view :

@model WebAccounting.Lib.Models.Sales
 
@{
    ViewBag.Title = "AddEditSalesData";
    Layout = "~/Views/Shared/_LayoutPostLogin.cshtml";
}
 
@section HeadContent {
<script type="text/javascript">
    $(document).ready(function () {
        $("#txtdatepicker").datepicker();
        onLoad();
    });
    function AssignDateTimeValue() {
        $("#InvoiceDate").val() = $("#txtdatepicker").val();
    }
    function onLoad(e) {
        debugger;
        $("form").find('#drpVATRate').data('tDropDownList').select(function (dataItem) {
            debugger;
            return dataItem.Text == e.dataItem['VATRate'];
        });
    }
</script>
}
 
@using (Html.BeginForm())
{
             @(Html.Telerik().Grid<WebAccounting.Lib.Models.SalesNormal>()
                .Name("Grid")
                .ToolBar(commands => commands.Insert().ButtonType(GridButtonType.ImageAndText))
                .DataKeys(keys => keys.Add(c => c.SalesNormalID))
                .DataBinding(dataBinding =>
                {
                    dataBinding.Ajax()
                        .Insert("_InsertAjaxEditing", "Sales");
                })
                .Columns(columns =>
                {
                    columns.Bound(c => c.Item).Width(50);
                    columns.Bound(c => c.Description).Width(50);
                    columns.Bound(c => c.UnitCost).Width(50);
                    columns.Bound(c => c.Quantity).Width(50);
                    columns.Bound(c => c.VATRate).Width(50);
                       
                    columns.Bound(c => c.VATAmount).Width(50);
                    columns.Bound(c => c.NettAmount).Width(50);
                })
                .ClientEvents(events => events.OnLoad("onLoad"))
             )
 
        </div>
        <div>gross result</div>
    
    </div>
    <div>
        <input type="Submit" value="Save" onclick="javascript:AssignDateTimeValue();"/>
        <input type="button" value="Cancel" id="btnCancel"/>
    </div>
}


My Editor Template is VATRate.cshtml :

@(Html.Telerik().DropDownList()
        .Name("drpVATRate").BindTo(new SelectList(new string[]{"20%","10%"}))     
)


Model definition :(SalesNormal.cs)

namespace WebAccounting.Lib.Models
{
    public class SalesNormalMetaData
    {
        [UIHint("VATRate"), Required]
        [RegularExpression("^riya$")]
        public decimal? VATRate { get; set; }
    }
    [MetadataType(typeof(SalesNormalMetaData))]
    public partial class SalesNormal
    {
 
    }
}

Please let me know if any solution for this will be found or if I am making any mistake.
Thanks in advance.
Riya Shah
Tags
Grid
Asked by
Chintan Shah
Top achievements
Rank 2
Share this question
or