Mar 24, 2017, 12:42 PM
How to generate ComboBox in Grid row cell with dynamic row data values in EXT.NET MVC?
Model format
need to display Combo box in third column and fill comboBox items JobCustomFieldTypePickList
Result
We getting combobox in grid but combobox data not filled.
public class JobCustomField{
public int CustomFieldTypeId { get; set; }
public string CustomFieldTypeValue { get; set; }
public string CustomFieldTypeName { get; set; }
public string FieldType { get; set; }
public string DefaultValue { get; set; }
public bool Required { get; set; }
public List<JobCustomFieldTypePickList> JobCustomFieldTypePickList { get; set; }
}
public class JobCustomFieldTypePickList
{
public string JobCustomFieldTypePickListName { get; set; }
public int DisplayOrder { get; set; }
}
Sample Data
List<JobCustomField> ModelData = new List<JobCustomField>(){
new JobCustomField(){
CustomFieldTypeId = 1,
CustomFieldTypeValue ="SA",
CustomFieldTypeName ="CFA",
FieldType="SINGLE",
DefaultValue="A",
JobCustomFieldTypePickList = new List<JobCustomFieldTypePickList>(){
new JobCustomFieldTypePickList(){
JobCustomFieldTypePickListName = "AA",
DisplayOrder = 1
}
}
},
new JobCustomField(){
CustomFieldTypeId = 2,
CustomFieldTypeValue ="SB",
CustomFieldTypeName ="CFB",
FieldType="MULTI",
DefaultValue="B",
JobCustomFieldTypePickList = new List<JobCustomFieldTypePickList>(){
new JobCustomFieldTypePickList(){
JobCustomFieldTypePickListName = "BA",
DisplayOrder = 1
},
new JobCustomFieldTypePickList(){
JobCustomFieldTypePickListName = "BB",
DisplayOrder = 1
},
new JobCustomFieldTypePickList(){
JobCustomFieldTypePickListName = "BC",
DisplayOrder = 1
}
}
}
};
@(
Html.X().GridPanel().Padding(5).Title("Custom Field(s)")
.ID("CustomFieldList")
.EmptyText("No Custom Field(s) found")
.AutoRender(false)
.Layout("fit")
.Height(530)
.Scroll(ScrollMode.None)
.Border(true)
.Store(Html.X().Store().ID("CustomFieldStore")
.Model(Html.X().Model().IDProperty("RowId")
.Fields(
new ModelField("FieldType") { Mapping = "FieldType" },
new ModelField("CustomFieldTypeName") { Mapping = "CustomFieldTypeName" },
new ModelField("CustomFieldTypeValue") { Mapping = "CustomFieldTypeValue" },
new ModelField("DefaultValue ") { Mapping = " DefaultValue " },
new ModelField("Required") { Mapping = "Required" },
new ModelField("JobCustomFieldTypePickList", ModelFieldType.Object) { IsComplex = true },
)
)
.DataSource(Model)
)
.ColumnModel(
column =>
{
column.Add(
Html.X().Column()
.Text("Custom Field")
.DataIndex("CustomFieldTypeName")
.Width(150));
column.Add(
Html.X().Column()
.Text("Field Type")
.DataIndex("FieldType")
.Width(150));
column.Add(
Html.X().ComponentColumn()
.Editor(true)
.ID("CustomFieldValue")
.DataIndex("JobCustomFieldTypePickList")
.Width(150)
.Text("Value")
.Component(
Html.X().Container()
.Items(
Html.X().ComboBox()
.ItemID("CustomFieldValueMultiDrop")
.ID("CustomFieldValueMultiDrop")
.Flex(1)
.QueryMode(DataLoadMode.Local)
.ValueField("JobCustomFieldTypePickListName")
.EmptyText("(All)")
.DisplayField("JobCustomFieldTypePickListName")
.Store(Html.X().Store().ID("PickListValuestore")
.AutoLoad(true)
.Model(Html.X().Model()
.IDProperty("JobCustomFieldTypePickListName")
.Fields(
new ModelField("JobCustomFieldTypePickListName", ModelFieldType.String) { Mapping = "JobCustomFieldTypePickListName" }
)
)
})
need to display Combo box in third column and fill comboBox items JobCustomFieldTypePickList
Result
We getting combobox in grid but combobox data not filled.
Last edited by rajeshb; Mar 27, 2017 at 8:14 AM.