windowsforms-devexpress-dot-xtraeditors-dot-repository-dot-repositoryitemlookupedit-dd0fe02d.md
Finishes the initialization of the LookUp editor’s data source. Call this method when the form is loading, before you start to create columns or obtain column values.
Namespace : DevExpress.XtraEditors.Repository
Assembly : DevExpress.XtraEditors.v25.2.dll
NuGet Package : DevExpress.Win.Navigation
public virtual void ForceInitialize()
Public Overridable Sub ForceInitialize
The ForceInitialize method initializes the editor’s data source so you can safely create columns or obtain column values on a form’s load (for instance, in the Form.Load event handler).
Note
The ForceInitialize method does not create lookup columns. Call the PopulateColumns() method to generate columns for the data source fields.
This example demonstrates how to initialize a LookUpEdit or its repository item during form load.
using DevExpress.XtraEditors.Repository;
private void Form1_Load(object sender, EventArgs e) {
RepositoryItemLookUpEdit repositoryItemLookUpEdit = new RepositoryItemLookUpEdit();
repositoryItemLookUpEdit.DataSource = new List<DataObject> {
new DataObject { ID = 1, Text = "One" },
new DataObject { ID = 2, Text = "Two" },
new DataObject { ID = 3, Text = "Three" }
};
repositoryItemLookUpEdit.ValueMember = nameof(DataObject.ID);
repositoryItemLookUpEdit.DisplayMember = nameof(DataObject.Text);
// Initializes the lookup's data source and internal infrastructure.
repositoryItemLookUpEdit.ForceInitialize();
// Now, you can safely populate lookup columns.
repositoryItemLookUpEdit.PopulateColumns();
// Access columns and obtain column values.
var column = repositoryItemLookUpEdit.Columns[nameof(DataObject.Text)];
string columnValue = repositoryItemLookUpEdit.GetDataSourceValue(column, 1) as string; // columnValue = "Two"
object keyValue = repositoryItemLookUpEdit.GetKeyValueByDisplayValue(column); // keyValue = 2
}
Imports DevExpress.XtraEditors.Repository
Private Sub Form1_Load(ByVal sender As Object, ByVal e As EventArgs)
Dim repositoryItemLookUpEdit As New RepositoryItemLookUpEdit()
repositoryItemLookUpEdit.DataSource = New List(Of DataObject) From {
New DataObject With {.ID = 1, .Text = "One"},
New DataObject With {.ID = 2, .Text = "Two"},
New DataObject With {.ID = 3, .Text = "Three"}
}
repositoryItemLookUpEdit.ValueMember = nameof(DataObject.ID)
repositoryItemLookUpEdit.DisplayMember = nameof(DataObject.Text)
' Initializes the lookup's data source and internal infrastructure.
repositoryItemLookUpEdit.ForceInitialize()
' Now, you can safely populate lookup columns.
repositoryItemLookUpEdit.PopulateColumns()
' Access columns and obtain column values.
Dim column = repositoryItemLookUpEdit.Columns(nameof(DataObject.Text))
Dim columnValue As String = TryCast(repositoryItemLookUpEdit.GetDataSourceValue(column, 1), String) ' columnValue = "Two"
Dim keyValue As Object = repositoryItemLookUpEdit.GetKeyValueByDisplayValue(column) ' keyValue = 2
End Sub
See Also
RepositoryItemLookUpEdit Class