Open renshou2003 opened 3 weeks ago
我在代码中尝试了
<pu:MultiComboBox Height="NaN"
VerticalAlignment="Center">
<pu:MultiComboBoxItem Content="Item 1" />
</pu:MultiComboBox>
无论是否添加 VerticalAlignment="Center"
,都不会报错。
能否提供更多信息?
我推测你可能正在一个大小为无限大(或内部为无限大)的容器中使用 MultiComboBox
。
因为在正常使用Grid、StackPanel这类容器时,无论是否为子控件设置Height
,控件在测量时都不会出现Infinity值。
使用一个无限大的 MultiComboBox
似乎不是合理的开发行为。如果需要帮助,请提供更多信息
应该是因为RowDefinition定义为Auto导致的,不过我认为这样使用应该是比较常见的。ComboBox控件在这种情况下使用并不会出现问题。 上面为使用ComboBox控件的呈现效果,而同样设置之下MultiComboBox控件将引发异常。
MultiComboBox不设置固定高度时,引发System.InvalidOperationException:“元素“System.Windows.Controls.VirtualizingStackPanel”的布局测量覆盖不应将 PositiveInfinity 作为其 DesiredSize 返回,即使将 Infinity 作为可用大小传入。”
原因为模板文件:SourceCode\SharedResources\Panuon.WPF.UI.Internal\Templates\MultiComboBoxTemplate.xaml ,其中Visibility设置为Hidden导致,建议设置为Collapsed