public void Down()
{
if (DataView.IsLastKnownItem(SelectedItem) == false)
{
SelectedIndex++;
}
if (SelectedIndex >= visibleRowOffset + NumRowsInView)
{
visibleRowOffset++;
this.query.Skip = visibleRowOffset;
DataView = DataSource.GetDataView(query);
}
if (SelectedIndex - visibleRowOffset < DataView.Items.Count)
{
SelectedItem = DataView.Items[SelectedIndex - visibleRowOffset];
}
else if (SelectedIndex > 0)
{
SelectedIndex--;
SelectedItem = DataView.Items[SelectedIndex - visibleRowOffset];
}
}