Элементы списка внизу не были выбраны автоматически - PullRequest
1 голос
/ 25 ноября 2011

У меня есть эта тонкая программа относительно поведения списка. Мой список связан с наблюдаемым списком в модели представления. Есть 2 способа добавить элемент в список. Сначала добавляется один элемент, затем этот элемент будет выбран напрямую. Это отлично работает.

Вторым способом была LOAD, которая по своему названию будет добавлять более 1 элемента в список. Теперь проблема в том, что при загрузке элементов, которые больше, чем список, может вместить в представление, те элементы, которые не отображаются (таким образом, элементы внизу необходимо прокручивать для его просмотра), не выбирались автоматически ...

Выбраны только те элементы, которые по умолчанию просматриваются:

private void ItemContainerGenerator_StatusChanged(object sender, EventArgs e)
{

  if (listBoxAddresses.ItemContainerGenerator.Status != GeneratorStatus.ContainersGenerated) return;

  for (int i = 0; i < TestSetting.DeviceSettings.Count; i++)
  {
    ListBoxItem myListBoxItem = (ListBoxItem)(listBoxAddresses.ItemContainerGenerator.ContainerFromItem(TestSetting.DeviceSettings[i]));

    if (myListBoxItem != null)
    {
      myListBoxItem.IsSelected = true;
    }
  }
  listBoxAddresses.ItemContainerGenerator.StatusChanged -= ItemContainerGenerator_StatusChanged;
}

Интересно, это естественное поведение для списка?

1 Ответ

0 голосов
/ 06 декабря 2011

Я только сейчас это осознаю ... установив мой список в:

VirtualizingStackPanel.IsVirtualizing="False"

сделал все делоСпасибо Dr.WPF за идею.Хотя есть последствия для отключения виртуализации (производительности), но это не так важно.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...