1

みんな。リストボックスを取得しました。61 個のアイテムを表示しようとすると、正常に実行されます。しかし、それが 62 以上になると、アプリは失敗します

System.Windows.Markup.XamlParseException occurred
  Message= [Line: 0 Position: 0]
  LineNumber=0
  LinePosition=0
  StackTrace:
       at MS.Internal.XcpImports.CheckHResult(UInt32 hr)
       at MS.Internal.XcpImports.FrameworkElement_MeasureOverride(FrameworkElement element, Size availableSize)
       at System.Windows.FrameworkElement.MeasureOverride(Size availableSize)
       at System.Windows.FrameworkElement.MeasureOverride(IntPtr nativeTarget, Single inWidth, Single inHeight, Single& outWidth, Single& outHeight)
       at MS.Internal.XcpImports.MeasureNative(IntPtr element, Single inWidth, Single inHeight)
       at MS.Internal.XcpImports.UIElement_Measure(UIElement element, Size availableSize)
       at System.Windows.UIElement.Measure(Size availableSize)
       at System.Windows.Controls.VirtualizingStackPanel.MeasureChild(UIElement child, Size layoutSlotSize)
       at System.Windows.Controls.VirtualizingStackPanel.MeasureOverride(Size constraint)
       at System.Windows.FrameworkElement.MeasureOverride(IntPtr nativeTarget, Single inWidth, Single inHeight, Single& outWidth, Single& outHeight)

それは何ですか - 私には手がかりがありません.. ランダムな瞬間に落ちます。listBox を最後までスクロールし、最後の要素を表示し、スクロールして戻ると、エラーがスローされます。

4

1 に答える 1

0

ほとんどの場合、リストボックスには高さが可変の項目があります。ListBox.ItemsPanel を VirtualizingStackPanel ではなく StackPanel に変更してみてください。これにより可変高さの項目が許可されますが、リストに多くの項目がある場合、起動時間とメモリ使用量が増加するため、トレードオフがあります。

于 2012-02-16T16:20:36.517 に答える