2011-05-20 45 views
4

我想要的值To="200.0"將等於網格大小automaticaly如何從0增加一個列表框以網格的大小在XAML

<ListBox HorizontalAlignment="Stretch" Grid.Column="1" 
      Margin="12,90,12,12" 
      Name="listBox1" 
      Opacity="0.6" 
      VerticalAlignment="Stretch" BorderThickness="0.5" BorderBrush="White"> 
      <ListBox.Triggers> 
       <EventTrigger RoutedEvent="Window.Loaded"> 
        <BeginStoryboard> 
         <Storyboard> 
          <DoubleAnimation Storyboard.TargetName="listBox1" 
              Storyboard.TargetProperty="Width" 
              From=" 0.0" To="200.0" /> 
          <DoubleAnimation Storyboard.TargetName="listBox1" 
              Storyboard.TargetProperty="Height" 
              From="0.0" To="200.0" /> 
         </Storyboard> 
        </BeginStoryboard> 
       </EventTrigger> 
      </ListBox.Triggers> 
     </ListBox> 

回答

1

嘗試這樣的事:

<Grid Name="test"> 
    <ListBox HorizontalAlignment="Stretch" Name="listBox1" 
     VerticalAlignment="Stretch" BorderThickness="0.5" BorderBrush="Black"> 
     <ListBox.Triggers> 
      <EventTrigger RoutedEvent="Window.Loaded"> 
       <BeginStoryboard> 
        <Storyboard> 
         <DoubleAnimation Storyboard.TargetName="listBox1" 
              Storyboard.TargetProperty="Width" 
              From="0.0" To="{Binding ElementName=test,Path=ActualWidth}" /> 
         <DoubleAnimation Storyboard.TargetName="listBox1" 
              Storyboard.TargetProperty="Height" 
              From="0.0" To="{Binding ElementName=test,Path=ActualHeight}" /> 
        </Storyboard> 
       </BeginStoryboard> 
      </EventTrigger> 
     </ListBox.Triggers> 
    </ListBox> 
</Grid> 

我使用ElementName綁定而不是RelativeSource綁定,因爲我無法使RelativeSource工作。我猜是因爲故事板不是列表框的一部分。

+0

好的答案!謝謝! – christiangobo 2011-05-20 18:35:06