RepositoryItemLookUpEdit.GetDataSourceRowIndex(LookUpColumnInfo, Object) Method
Returns the visible index of the row in a data source that contains the specified value in the specified column.
Namespace: DevExpress.XtraEditors.Repository
Assembly: DevExpress.XtraEditors.v24.1.dll
NuGet Package: DevExpress.Win.Navigation
Declaration
Parameters
Name | Type | Description |
---|---|---|
column | LookUpColumnInfo | A LookUpColumnInfo object that is the column whose values will be compared with the specified value to locate the required row. |
value | Object | A value contained in the required row in the specified column. |
Returns
Type | Description |
---|---|
Int32 | An integer value that is the row’s zero-based visible index in the data source. -1 if the row was not found. |
Remarks
The index returned can be used to obtain the row’s specific value via the RepositoryItemLookUpEdit.GetDataSourceValue method.
To get the index of a specific row in the underlying data source, use the RepositoryItemLookUpEdit.GetListSourceIndex method.
using System;
using System.Windows.Forms;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
namespace DXApplication23 {
public partial class Form1 : DevExpress.XtraEditors.XtraForm {
public Form1() {
InitializeComponent();
lookUpEdit1.Properties.DataSource = Employee.GetSampleData();
// Sets the lookup's data fields.
lookUpEdit1.Properties.DisplayMember = "FullName";
lookUpEdit1.Properties.ValueMember = "ID";
// Sets the lookup's value. Selects the first record.
lookUpEdit1.EditValue = 0;
lookUpEdit1.Properties.ForceInitialize();
lookUpEdit1.Properties.PopulateColumns();
}
int GetLastNameRowIndex(string lastName) {
return lookUpEdit1.Properties.GetDataSourceRowIndex(lookUpEdit1.Properties.Columns["LastName"], lastName);
}
}
public class Employee {
public Employee(int iD, string firstName, string lastName) {
ID = iD;
FirstName = firstName;
LastName = lastName;
}
public static List<Employee> GetSampleData() {
return new List<Employee>() {
new Employee(0, "Bart", "Arnaz"),
new Employee(1, "Leah", "Simpson"),
new Employee(2, "Arnold", "Schwartz"),
new Employee(3, "William", "Zimmer"),
new Employee(4, "Samantha", "Piper")
};
}
// The 'ID' field must contain unique values.
public int ID { get; private set; }
public string FirstName { get; set; }
public string LastName { get; set; }
[Display(Order = -1)]
public string FullName {
get {
return string.Format("{0} {1}", FirstName, LastName);
}
}
}
}