Wpf ListBoxItem高度未得到更新
我在另一个列表框中有一个列表框,在内部列表框中,列表框项目的高度可能会增大或减小。我的问题是,当内部项收缩时,外部列表框不会重新渲染其高度。因此-在内部列表收缩之前保持先前的高度 我在这里尝试了很多东西,在所有类型的无效中,列表框项目的选择和取消选择应该更新,等等-没有任何帮助 有人能帮我吗 Thanx,Wpf ListBoxItem高度未得到更新,wpf,listbox,height,listboxitem,invalidation,Wpf,Listbox,Height,Listboxitem,Invalidation,我在另一个列表框中有一个列表框,在内部列表框中,列表框项目的高度可能会增大或减小。我的问题是,当内部项收缩时,外部列表框不会重新渲染其高度。因此-在内部列表收缩之前保持先前的高度 我在这里尝试了很多东西,在所有类型的无效中,列表框项目的选择和取消选择应该更新,等等-没有任何帮助 有人能帮我吗 Thanx, Gili为了见鬼,我做了以下几件事: <Grid x:Name="LayoutRoot"> <ListBox HorizontalAlignment="Lef
Gili为了见鬼,我做了以下几件事:
<Grid x:Name="LayoutRoot">
<ListBox HorizontalAlignment="Left" Width="283" VerticalAlignment="Top">
<ListBox Margin="0,0,-274,0">
<ListBoxItem Content="Text"/>
<ListBoxItem Content="Text"/>
<ListBoxItem Content="Text"/>
<ListBoxItem Content="Text"/>
<ListBoxItem Content="Text"/>
<ListBoxItem Content="Text"/>
</ListBox>
<ListBox Margin="0,0,-274,0">
<ListBoxItem Content="Text"/>
<ListBoxItem Content="Text"/>
<ListBoxItem Content="Text"/>
<ListBoxItem Content="Text"/>
<ListBoxItem Content="Text"/>
<ListBoxItem Content="Text"/>
</ListBox>
<ListBox Margin="0,0,-274,0">
<ListBoxItem Content="Text"/>
<ListBoxItem Content="Text"/>
<ListBoxItem Content="Text"/>
</ListBox>
<ListBox Margin="0,0,-274,0">
<ListBoxItem Content="Text"/>
<ListBoxItem Content="Text"/>
<ListBoxItem Content="Text"/>
<ListBoxItem Content="Text"/>
<ListBoxItem Content="Text"/>
<ListBoxItem Content="Text"/>
</ListBox>
</ListBox>
</Grid>
现在我意识到列表框中的项目不是在运行时创建的,但是我用click handler创建了一个小按钮,它将项目添加到中间的一个列表框中,并且所有内容都会相应地调整大小
如果您发布代码,我们可以查看一下有什么问题。举个例子:
<ListBox VerticalAlignment="Stretch" HorizontalAlignment="Stretch" Width="500">
<ListBox x:Name="Item1" VerticalAlignment="Stretch" HorizontalAlignment="Stretch" Width="300" BorderBrush="Red" BorderThickness="5">
<ListBox.Items>
<RichTextBox VerticalAlignment="Stretch" HorizontalAlignment="Stretch" Width="300" SizeChanged="OnInnserItemSizeChanged"/>
<RichTextBox VerticalAlignment="Stretch" HorizontalAlignment="Stretch" Width="300"/>
<RichTextBox VerticalAlignment="Stretch" HorizontalAlignment="Stretch" Width="300"/>
</ListBox.Items>
</ListBox>
<ListBox x:Name="Item2" BorderBrush="Green" BorderThickness="5" Width="300" VerticalAlignment="Stretch" HorizontalAlignment="Stretch">
<ListBox.Items>
<RichTextBox VerticalAlignment="Stretch" HorizontalAlignment="Stretch" Width="300"/>
<RichTextBox VerticalAlignment="Stretch" HorizontalAlignment="Stretch" Width="300"/>
<RichTextBox VerticalAlignment="Stretch" HorizontalAlignment="Stretch" Width="300"/>
</ListBox.Items>
</ListBox>
</ListBox>
现在,当我运行它并在其中一个RichTextBox中单击“Enter”/“Return”时,外部listbox项会拉伸以匹配新的大小-但是当我删除新添加的行时,它不会重新调整到其原始大小
Thanx,
Gili你能发布一些代码吗?内部列表框的高度是否设置为自动?我假设您希望内部列表框项目增长/收缩,改变其高度,从而反过来也改变外部框的高度。Gili-我建议您将更新的问题材料作为编辑放回原始问题中。堆栈溢出的答案将用于提供原始问题的答案,仅此而已。