Back to Devexpress

Data Binding

aspnetmvc-9149-common-features-data-binding.md

latest15.9 KB
Original Source

Data Binding

  • Dec 17, 2020
  • 3 minutes to read

All data-aware DevExpress MVC extensions expose the Bind method, allowing you to easily bind them to a data source (typically, it is a data Model passed from a Controller). There are also some additional methods facilitating data binding to certain declarative data sources. The table below lists data-aware extensions and corresponding available data binding methods.

|

Data-Aware Extension Name

|

Method to Bind to Data Model

|

Declarative Binding Methods

| | --- | --- | --- | |

AppointmentRecurrenceForm

|

AppointmentRecurrenceFormExtension.Bind

|

| |

Chart

|

ChartControlExtension.Bind

|

| |

CardView

|

CardViewExtension.Bind

|

CardViewExtension.BindToCustomData

CardViewExtension.BindToEF

CardViewExtension.BindToLINQ

CardViewExtension.BindToXML

| |

DataView

|

DataViewExtensionBase.Bind

|

DataViewExtensionBase.BindToEF

DataViewExtensionBase.BindToLINQ

DataViewExtensionBase.BindToSiteMap

DataViewExtensionBase.BindToXML

| |

DateNavigator

|

DateNavigatorExtension.Bind

|

| |

Diagram

|

DiagramExtension.Bind

|

| |

Gantt

|

GanttExtension.Bind

|

| |

GridView

|

GridViewExtension.Bind

|

GridViewExtension.BindToCustomData

GridViewExtension.BindToEF

GridViewExtension.BindToLINQ

GridViewExtension.BindToXML

| |

HtmlEditor

|

HtmlEditorExtension.Bind

|

| |

ImageGallery

|

DataViewExtensionBase.Bind

|

DataViewExtensionBase.BindToEF

DataViewExtensionBase.BindToLINQ

DataViewExtensionBase.BindToSiteMap

DataViewExtensionBase.BindToXML

ImageGalleryExtension.BindToFolder

| |

ImageSlider

|

ImageSliderExtension.Bind

|

ImageSliderExtension.BindToFolder

ImageSliderExtension.BindToXML

| |

ImageZoomNavigator

|

ImageZoomNavigatorExtension.Bind

|

ImageZoomNavigatorExtension.BindToFolder

ImageZoomNavigatorExtension.BindToXML

| |

FormLayout

|

FormLayoutExtension.Bind

|

| |

Menu

|

MenuExtension.Bind

|

MenuExtension.BindToXML

MenuExtension.BindToSiteMap

| |

NavBar

|

NavBarExtension.Bind

|

NavBarExtension.BindToXML

NavBarExtension.BindToSiteMap

| |

PivotGrid

|

PivotGridExtension.Bind

|

PivotGridExtension.BindToEF

PivotGridExtension.BindToLINQ

PivotGridExtension.BindToOLAP

| |

PivotCustomization

|

PivotCustomizationExtension.Bind

|

PivotCustomizationExtension.BindToOLAP

| |

PopupControl

|

PopupControlExtension.Bind

|

PopupControlExtension.BindToSiteMap

PopupControlExtension.BindToXML

| |

PopupMenu

|

PopupMenuExtension.Bind

|

PopupControlExtension.BindToSiteMap

PopupMenuExtension.BindToXML

| |

QueryBuilder

|

QueryBuilderExtension.Bind

|

| |

RatingControl

|

RatingControlExtension.Bind

|

| |

ReportDesigner

|

ReportDesignerExtension.Bind

|

ReportDesignerExtension.BindToUrl

| |

Ribbon

|

RibbonExtension.Bind

|

RibbonExtension.BindToSiteMap

RibbonExtension.BindToXML

| |

RichEdit

|

RichEditExtension.Bind

|

RichEditExtension.BindToXML

| |

RichEditCustomDocumentProcessor

|

RichEditCustomDocumentProcessor.Bind

|

RichEditCustomDocumentProcessor.BindToXML

| |

Scheduler

|

SchedulerExtension.Bind

|

| |

SchedulerStorageControl

|

SchedulerStorageControlExtension.Bind

|

| |

TabControl

|

TabControlExtension.Bind

|

TabControlExtension.BindToSiteMap

TabControlExtension.BindToXML

| |

TreeList

|

TreeListExtension.Bind

|

TreeListExtension.BindToSiteMap

TreeListExtension.BindToVirtualData

TreeListExtension.BindToXML

| |

TreeView

|

TreeViewExtension.Bind

|

TreeViewExtension.BindToSiteMap

TreeViewExtension.BindToVirtualData

TreeViewExtension.BindToXML

| |

VerticalGrid

|

VerticalGridExtension.Bind

|

VerticalGridExtension.BindToCustomData

VerticalGridExtension.BindToEF

VerticalGridExtension.BindToLINQ

VerticalGridExtension.BindToXML

| |

WebDocumentViewer

|

WebDocumentViewerExtension.Bind

|

| |

DataEditorExtensions

|

EditorExtension.Bind

ComboBoxExtension.Bind

TokenBoxExtension.Bind

|

ListEditors:

CheckBoxListExtension.BindList

ComboBoxExtension.BindList

ListBoxExtension.BindList

RadioButtonListExtension.BindList

TrackBarExtension.BindList

|

The following code demonstrates how to bind the Chart extension to a Model.

csharp
namespace MyProject.Models {
    public class ChartPoint {
        public int X { get; set; }
        public int Y { get; set; }
    }
}
vb
Namespace MyProject.Models
    Public Class ChartPoint
        Private m_X As Integer
        Private mY As Integer

        Public Property X() As Integer
            Get
                Return mX
            End Get
            Set
                mX = Value
            End Set
        End Property

        Public Property Y() As Integer
            Get
                Return mY
            End Get
            Set
                mY = Value
            End Set
        End Property        
    End Class
End Namespace
razor
@Html.DevExpress().Chart(settings => {
    settings.Name = "chart";
    settings.Series.Add(s => {
        s.Name = "My Data";
        s.SetDataMembers("X", "Y");
        s.Views().SplineSeriesView(v =>{ });
    });
}).Bind(Model).GetHtml()
csharp
using System.Collections.Generic;
using System.Web.Mvc;
using MyProject.Models;

namespace MyProject.Controllers {
    public class HomeController : Controller {
        public ActionResult Index() {
            return View(GetPoints());
        }

        private List<ChartPoint> GetPoints() {
            var m = new List<ChartPoint>();
            m.Add(new ChartPoint { X = 1, Y = 1 });
            m.Add(new ChartPoint { X = 2, Y = 5 });
            m.Add(new ChartPoint { X = 3, Y = 3 });
            m.Add(new ChartPoint { X = 4, Y = 9 });
            m.Add(new ChartPoint { X = 5, Y = 10 });
            return m;
        }
    }
}
vb
Imports System.Collections.Generic
Imports System.Web.Mvc
Imports MyProject.Models

Namespace MyProject.Controllers
    Public Class HomeController Inherits Controller
        Public Function Index() As ActionResult
            return View(GetPoints())
        End Function

        Private Function GetPoints() As List<ChartPoint>
            Dim m As List<ChartPoint> = New List<ChartPoint>()
            m.Add(New ChartPoint With { .X = 1, .Y = 1 })
            m.Add(New ChartPoint With { .X = 2, .Y = 5 })
            m.Add(New ChartPoint With { .X = 3, .Y = 3 })
            m.Add(New ChartPoint With { .X = 4, .Y = 9 })
            m.Add(New ChartPoint With { .X = 5, .Y = 10 })
            Return m
        End Function
    End Class
End Namespace

For specifics of binding DevExpress MVC data editors (listed in Data Editors Extensions), refer to the Binding Data Editors to Data topic.

See Also

Bind Grid View to Data