2011-02-10 10 views
1

こんにちはイムは、このExpander型のコントロールのイベントトリガーを置くのを助けてください!

allrooms = remote.GetAllRooms(); 
     for (int a = 0; a < allrooms.Count; a++) { 
      Expander ex = new Expander(); 
      ex.Expanded += expander1_Expanded; 
      ex.Width = 254; 
      ex.Name = ("expander" + a); 
      ex.VerticalAlignment = System.Windows.VerticalAlignment.Stretch; 
      ex.HorizontalAlignment = System.Windows.HorizontalAlignment.Stretch; 
      ex.Header = allrooms[a].nome; 
      WrapPanel panel = new WrapPanel(); 
      panel.Opacity = 1; 
      panel.Width = 254; 
      for (int b = 0; b < allusers.Count; b++) { 
       System.Windows.Controls.Label lbl = new System.Windows.Controls.Label(); 
       lbl.Content = allusers[b].nick; 
       lbl.Width = 127; 
       panel.Children.Add(lbl); 
      } 
      ex.Content = panel; 
      Canvas.SetTop(ex, (30 * a)); 
      canvasleft.Children.Add(ex); 
     } 
     myTimer.Stop(); 

そして今、私の目的は、XAMLまたはC#で、作成したエクスパンダに、このイベントのトリガーを追加することであるような何かをしようとしています。

<Canvas.Triggers> 
     <EventTrigger RoutedEvent="Expander.Expanded" SourceName="expander"> 
      <EventTrigger.Actions> 
       <BeginStoryboard> 
        <Storyboard> 
         <DoubleAnimation From="0" To="1" Duration="0:0:0.25" Storyboard.TargetName="listBox" Storyboard.TargetProperty="(FrameworkElement.LayoutTransform).(ScaleTransform.ScaleY)"/> 
        </Storyboard> 
       </BeginStoryboard> 
      </EventTrigger.Actions> 
     </EventTrigger> 
    </Canvas.Triggers> 

そのような何かをそれがエラーを持っていると私は必要なものは、キャンバス内のすべての作成したパンダのためのx:Type Expanderのようなものです。

誰も私を助けることができますか?

答えて

1

ような何か試してみてください:スタイルが原因TargetTypeのすべてExpandersに適用されるべきリソースに置かれた場合

<Canvas.Resources> 
    <Style TargetType="Expander"> 
     <Style.Triggers> 
     <EventTrigger RoutedEvent="Expander.Expanded"> 
      <EventTrigger.Actions> 
       <BeginStoryboard> 
        <Storyboard> 
         <DoubleAnimation From="0" To="1" Duration="0:0:0.25" Storyboard.TargetName="listBox" Storyboard.TargetProperty="(FrameworkElement.LayoutTransform).(ScaleTransform.ScaleY)"/> 
        </Storyboard> 
       </BeginStoryboard> 
      </EventTrigger.Actions> 
     </EventTrigger> 
     </Style.Triggers> 
    </Style> 
</Canvas.Resources> 

を。

関連する問題