2012-04-18 6 views
0

私は、スクロールビューアでストレッチ問題を抱えている、私は私のScrollViewerのと一緒にドックパネル内部のテキストボックスとボタンがあり、私はそれらの項目の下にスクロールビューアを望んでいたが、下から伸びドックパネルと高さの幅に伸ばしドックパネルのボタンとテキストボックスまで。スクロールビューアはdockpanelの右側にこだわっ?

は、だから私はこれをしようと試み:スクロールビューアは何とかそのように右側に貼付されるしかし

<UserControl x:Class="WpfApplication4.AppPages.FindStudent" 
      xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
      xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" 
      xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" 
      xmlns:d="http://schemas.microsoft.com/expression/blend/2008" 
      mc:Ignorable="d" 
      d:DesignHeight="300" d:DesignWidth="300" Loaded="UserControl_Loaded"> 
    <DockPanel Height="299" Width="289"> 
     <TextBox Height="23" Name="textBox1" Width="188" VerticalAlignment="Top"/> 
     <Button Content="Button" Height="23" Name="button1" Width="100" Click="button1_Click" VerticalAlignment="Top" /> 
     <ScrollViewer VerticalScrollBarVisibility="Hidden" VerticalAlignment="Stretch" HorizontalAlignment="Stretch" Width="88"> 

enter image description here

答えて

1

あなたはどのようにアイテムを伝える必要があります付属のプロパティDockPanel.Dockを使用してドッキングします。このような

何か:

<DockPanel> 
    <StackPanel DockPanel.Dock="Top" Orientation="Horizontal"> 
     <TextBox /> 
     <Button /> 
    <StackPanel> 
    <ScrollViewer DockPanel.Dock="Top" /> 
</DockPanel> 

注デフォルトでDockPanelの最後の子が残っている利用可能なスペースを埋めるようにします。

+0

あなたは残りのスペースを埋めるためにストレッチする最後のコントロールをしたくない場合は、=「偽」LastChildFillを設定することができます。働い –

+0

こんにちはジェイうん、ありがとう。 –

1

私はあなたがコントロールがDockPanel.Dockを設定することで、あなたのDockPanelの内側にドッキングする方法を指定する必要があります、ジェイは言っエコーう。いくつかの追加の注意事項:

  • LastChildFillは、最後の要素は、既定のドッキングは、コントロールがリストされている順序は、それらがドッキングされている方法に影響を与えます
  • 左にある
  • 残りのスペースを埋めるために広がっているかどうかを制御します。

MSDN documentation hereおよびsimple tutorial hereを参照してください。 DockPanelで

+0

1はLastChildFillがいい添加物だったあなたに感謝します。 –