برنامج الأغذية العالمي: كيفية جعل الضوابط تمتد في StackPanel؟
-
06-07-2019 - |
سؤال
وسوف المتزلج وبعض الضوابط الأخرى التي لم تمتد لملء المساحة المتاحة عند وضعها في StackPanel. بدلا من ذلك العرض هو دائما MinWidth (أو حوالي 10 بكسل إذا لم يتم تعيين MinWidth). كيف يمكنني جعلها تمتد (أي ما يعادل Anchor.Left | Anchor.Right في WinForms عناصر)؟ مثال:
<StackPanel DockPanel.Dock="Bottom" Orientation="Horizontal">
<Slider Value="14" SmallChange="0.5" Maximum="100" Minimum="4"
x:Name="FontSize" MinWidth="30" LargeChange="2"
TickFrequency="10" TickPlacement="TopLeft"
HorizontalAlignment="Stretch"/>
<TextBlock Margin="8" Text="{Binding ElementName=FontSize, Path=Value}"
VerticalAlignment="Center"/>
</StackPanel>
المحلول
وأنت تريد DockPanel بدلا من ذلك:
<DockPanel DockPanel.Dock="Bottom" LastChildFill="True">
<TextBlock DockPanel.Dock="Right" ... />
<Slider ... />
</DockPanel>
وDockPanel يحصل لك "أنكور" الوظيفة التي تريدها. StackPanel ببساطة مداخن الأمور بجانب بعضها البعض.
ولقد لاحظت من كتلة التعليمات البرمجية التي يتم إرساء StackPanel الخاص بك بالفعل داخل dockpanel، لذلك لقد تضمنت نفس السمة لرسو السفن في نموذج التعليمات البرمجية بلدي أعلاه.
لا تنتمي إلى StackOverflow