Добавление дочерних элементов в панель стека программно не работает

Может ли кто-нибудь заметить мою ошибку?

Вот код:

        StackPanel stackPanel = new StackPanel();
        stackPanel.Orientation = Orientation.Vertical;
        for (int index = _elements.Count - 1; index >= 0; index--)
        {
            FrameworkElement element = _elements[index];
            WriteableBitmap tempBitmap = new WriteableBitmap(element, null);
            Image image = new Image();
            image.Source = tempBitmap;
            stackPanel.Children.Add(image);
        }

        stackPanel.UpdateLayout();

        _bitmap = new WriteableBitmap(stackPanel, null);

        _bitmap.Invalidate();

Как вы можете видеть, я создаю временное изображение, затем добавляю его в панель стека, а затем создание финального WriteableBitmap. Мой первый дочерний элемент stackpanel имеет высоту 154, а второй - 389. После этой строки:

 _bitmap.Invalidate();

, когда я вижу PixelHeight, он равен 389. Куда подевался мой первый ребенок?

6
задан TCM 13 January 2012 в 05:18
поделиться