Back to Devexpress

DxListBox<TData, TValue>.MakeItemVisible(Int32) Method

blazor-devexpress-dot-blazor-dot-dxlistbox-2-dot-makeitemvisible-x28-system-dot-int32-x29.md

latest4.3 KB
Original Source

DxListBox<TData, TValue>.MakeItemVisible(Int32) Method

Makes the item with the specified index visible on screen.

Namespace : DevExpress.Blazor

Assembly : DevExpress.Blazor.v25.2.dll

NuGet Package : DevExpress.Blazor

Declaration

csharp
public void MakeItemVisible(
    int visibleIndex
)

Parameters

NameTypeDescription
visibleIndexInt32

The item’s visible index.

|

Remarks

Pass the item’s visible index to the MakeItemVisible method to make the item visible on screen. The method scrolls the item list up or down until the item appears.

If you pass an invalid visible index, the method does nothing.

In the following code snippet, a Scroll to the last row button scrolls the item list to the last visible item:

razor
<DxListBox Data="@Staff.DataSource"
           @ref="MyListBox"
           @bind-Values="@Values"
           TextFieldName="@nameof(Person.Text)">
</DxListBox>

<DxButton Text="Scroll to the last row" Click="ScrollToLastRow" />

@code {
    IListBox<Person, Person> MyListBox; 
    IEnumerable<Person> Values { get; set; } = Staff.DataSource.Take(1);

    void ScrollToLastRow() {
        MyListBox.MakeItemVisible(11);
    }
}
csharp
namespace StaffData {
    public static class Staff {
        private static readonly Lazy<List<Person>> dataSource = new Lazy<List<Person>>(() => {
            var dataSource = new List<Person>() {
                new Person() { Id= 0 , FirstName="John", LastName="Heart", Department=Department.Electronics },
                new Person() { Id= 1 , FirstName="Samantha", LastName="Bright", Department=Department.Motors },
                new Person() { Id= 2 , FirstName="Arthur", LastName="Miller", Department=Department.Software },
                new Person() { Id= 3 , FirstName="Robert", LastName="Reagan", Department=Department.Electronics },
                new Person() { Id= 4 , FirstName="Greta", LastName="Sims", Department=Department.Motors },
                new Person() { Id= 5 , FirstName="Brett", LastName="Wade", Department=Department.Software },
                new Person() { Id= 6 , FirstName="Sandra", LastName="Johnson", Department=Department.Electronics },
                new Person() { Id= 7 , FirstName="Edward", LastName="Holmes", Department=Department.Motors },
                new Person() { Id= 8 , FirstName="Barbara", LastName="Banks", Department=Department.Software },
                new Person() { Id= 9 , FirstName="Kevin", LastName="Carter", Department=Department.Electronics },
                new Person() { Id= 10, FirstName="Cynthia", LastName="Stanwick", Department=Department.Motors },
                new Person() { Id= 11, FirstName="Sam", LastName="Hill", Department=Department.Electronics }};
            return dataSource;
        });
        public static List<Person> DataSource { get { return dataSource.Value; } }
    }

    public class Person {
        public int Id { get; set; }
        public string FirstName { get; set; }
        public string LastName { get; set; }
        public Department Department { get; set; }
        public string Text => $"{FirstName} {LastName} ({Department} Dept.)";
        public override bool Equals(object obj) {
            if (obj is Person typedObj) {
                return (this.Id == typedObj.Id) && (this.FirstName == typedObj.FirstName) && (this.LastName == typedObj.LastName)
                && (this.Department == typedObj.Department);
            }
            return base.Equals(obj);
        }
        public override int GetHashCode() {
            return HashCode.Combine(Id, FirstName, LastName);
        }
    }

    public enum Department { Motors, Electronics, Software }
}

Implements

MakeItemVisible(Int32)

See Also

DxListBox<TData, TValue> Class

DxListBox<TData, TValue> Members

DevExpress.Blazor Namespace