構築中の Silverlight コントロールに CheckBoxList を構築するのに苦労していますが、正しく取得するのに問題があります。
私が求めているのは、* 高さの GridRow 内で CheckBoxes を垂直にラップする CheckBoxList です。私が抱えている問題は、WrapPanel の高さをそれが含まれる行の高さに指定したいということです。
WPF では、次のようになります。
<ScrollViewer BorderThickness="0"
HorizontalScrollBarVisibility="Auto"
VerticalScrollBarVisibility="Hidden" >
<ItemsControl Name="ic">
<ItemsControl.ItemsPanel>
<ItemsPanelTemplate>
<toolkit:WrapPanel Orientation="Vertical"
Height="{Binding Path=ActualHeight,
RelativeSource={RelativeSource Mode=FindAncestor,
AncestorType={x:Type ScrollContentPresenter}}}" />
</ItemsPanelTemplate>
</ItemsControl.ItemsPanel>
<ItemsControl.ItemTemplate>
<DataTemplate>
<CheckBox Content="{Binding Path=Description}" Margin="0,0,10,2" FontSize="12"/>
</DataTemplate>
</ItemsControl.ItemTemplate>
</ItemsControl>
</ScrollViewer>
Silverlight は RelativeSource を同じ方法でサポートしていないため、WPF で行ったのと同じ方法でそれを行うことはできません。RelativeSource のいくつかの回避策を見てきましたが、それらは非常に冗長であるか、機能させることができないようです。
Silverlight で WrapPanel の高さを設定する簡単な方法はありますか?