KendoGrid里面的MaskedTextBox

时间:2014-06-16 20:24:14

标签: kendo-ui grid kendo-grid mvc-editor-templates maskedtextbox

是否可以在Kendo Grid中使用Kendo MaskedTextBox?如果是这样,怎么样?

我正在使用MaskedTextBox的编辑器模板。

@model object

@Html.Kendo().MaskedTextBoxFor(m => m).Mask("(000) 000-0000")

Kendo Grid有一个使用MaskedTextBox的电话字段,但它没有抓取掩码。

    @(Html.Kendo().Grid(new ContactViewModel[] { })
        .Name("ServiceLocationContactsGrid")
        .Columns(column =>
        {
            column.ForeignKey(c => c.ContactTypeId, (System.Collections.IEnumerable)ViewData["contactTypes"], "ContactTypeId", "Description").EditorTemplateName("GridForeignKey");
            column.Bound(c => c.LastName).Width(700);
            column.Bound(c => c.FirstName);
            column.Bound(c => c.Title);
            column.Bound(c => c.EmailAddress);
            column.Bound(c => c.TelephoneNumber).EditorTemplateName("Telephone");
            column.Bound(c => c.TelephoneExtension);
            column.Bound(c => c.FaxNumber).EditorTemplateName("String");
            column.Command(command => { command.Edit().Text(" ").UpdateText(" ").CancelText(" "); command.Destroy().Text(" "); }).Width(180).Visible(!ViewBag.ReadOnlyView);
        })
            .ToolBar(toolBar =>
            {
                if(!ViewBag.ReadOnlyView) toolBar.Create().Text("Add New Contact");
            })
        .Sortable()
        .Filterable()
        .Editable(editable => editable.Mode(GridEditMode.InLine))
        .DataSource(dataSource =>
            dataSource
            .Ajax()
            .ServerOperation(false)
            .Model(model =>
            {
                model.Id(c => c.ContactId);
                model.Field(c => c.ContactId).Editable(false);
            })
            .Create(create => create.Action("CreateContact", "Contact"))
            .Update(update => update.Action("UpdateContact", "Contact"))
            .Read(read => read.Action("ListContacts", "Contact"))
            .Destroy(destroy => destroy.Action("DestroyContact", "Contact"))
        )
    )

2 个答案:

答案 0 :(得分:0)

制作编辑器模板后,您应将其放在所需的单元格上。 编辑模板

@(Html.kendo()MaskedTextBoxFor(M =>米)请将.Name( “测试”)掩模( “00/00/000”))

然后你应该把你的编辑器模板放在网格中:

columns.Bound(x=>x.test).EditorTemplateName("Test");

这段代码对我有用

答案 1 :(得分:-1)

您可以使用编辑器模板设置要使用的属性的ui提示,例如

[UIHint("您的模板在这里")]

公共字符串YourMaskedProperty {get; set;}