代码之家  ›  专栏  ›  技术社区  ›  Ashley Grenon

WPF DataTemplate-向集合中添加新项时激发的事件?

  •  0
  • Ashley Grenon  · 技术社区  · 15 年前

    当新项目添加到 Flights TabItem 添加到 TabControl . 添加新选项卡时,我需要调用图表控件上的方法。问题是我找不到合适的事件来处理。

    <TabControl Name="chartControl" ItemsSource="{Binding Flights}">
        <TabControl.ItemContainerStyle>
            <Style TargetType="TabItem">
                <Setter Property="Header" Value="{Binding Name}" />
            </Style>
        </TabControl.ItemContainerStyle>
        <TabControl.ContentTemplate>
            <DataTemplate>
                <WindowsFormHost Name="winHost">
                    <legacy:Chart></legacy:Chart>
                </WindowsFormHost>
            </DataTemplate>
        </TabControl.ContentTemplate>
    </TabControl>
    
    • 我试着处理 Loaded , 但是 哑巴
    • 我试图 DataTemplate Trigger RoutedEvent
      FrameWorkElement.Loaded 但我很确定这不是针对我的情况
    • 我试过一个事件策划者但是 没有按我想要的方式工作

    我尝试了其他一些事情,但我不太记得全部。

    任何建议都将不胜感激!

    2 回复  |  直到 15 年前
        1
  •  1
  •   Rachel    15 年前

    如果我正确地读取了您的XAML,那么您是在为TabControl创建一个图表控件,并在TabItem更改时更改其数据吗?如果是,您应该能够使用 SelectionChanged 事件。

    Flights 用户切换选项卡或添加新选项卡时的数据。

        2
  •  1
  •   statenjason    15 年前

    Flights 集合应为类型 ObservableCollection<> . xaml中的ItemsSource绑定将订阅其 事件和添加/删除选项卡。至于调用图表上的方法,WindowsFormHost是否已加载事件?因为将为创建的每个选项卡创建一个新选项卡。