RadNavigation fully supports binding to a wide range of datasources:
- DataSet, DataTable, DataView
- ASP 2.0 DataSource types including
- Hierarchical DataSource components
- Table-based DataSource components
- ObjectDataSource
- Any object that implements the IEnumerable interface
Below are the properties and methods related to data binding that are available for you:
- DataSource - Set to an instance of your data source. This is mandatory when
binding the RadNavigationat runtime
- DataSourceID - Set to the ID of your data source. This is
mandatory when binding the RadNavigation declaratively
- DataMember - If the data source is a DataSet and DataMember is set, then
the RadNavigation is bound to the DataTable with the respective name in the DataSet. If
DataMember is not set, the RadNavigationis bound to the first DataTable in the DataSet
- DataFieldID - This is the field name from the data source used to uniquely
identify each row. This field is required when binding to hierarchical data
- DataFieldParentID - This is the field name from the data source used to identify
the row for the parent item. This field is required when binding to hierarchical
data
- DataTextField - This is the field name from the data source that populates
each item's Text property during binding
- DataValueField - This is the field name from the data source that populates
each item's Value property during binding
- DataNavigateUrlField - This is the field name from the data source that populates
each item's NavigateUrlField property during binding
- DataBind - Call this method after you have set the aforementioned properties
when binding at runtime. This method is mandatory for binding at runtime
- MaxDataBindDepth - This property is used to determine the binding depth.
If for example you want to bind only the first two levels of the
menu, you should set this property to 2. The default value of the
MaxDataBindDepth property is -1, which means that
all items will be bound. Marking the menu instance with MaxDataBindDepth="0"
will NOT bind any items.
- AppendDataBoundItems - If you bind the menu using the DataBind method, all
menu items are automatically cleared. Setting AppendDataBoundItems to True
preserves the items that are already present in the menu. This lets you bind RadMenu
to multiple data sources or use both unbound and bound modes.
If the data source contains fields that map to other properties of menu items or
to custom attributes, you should use the ItemDataBound event to set those
values:
[C#]
protected void RadMenu1_ItemDataBound(object sender,
Telerik.Web.UI.RadMenuEventArgs e)
{
e.Item.ToolTip ="Read more about " +
(string) DataBinder.Eval(e.Item.DataItem, "Text");
}
[VB]
Protected Sub RadMenu1_ItemDataBound(ByVal sender As Object, _
ByVal e As Telerik.Web.UI.RadMenuEventArgs) Handles RadMenu1.ItemDataBound
e.Item.ToolTip = "Read more about " + _
CStr(DataBinder.Eval(e.Item.DataItem, "Text"))
End Sub