我有一个创建的经由反射绑定作为一个DataContext到TabControl
并且被表示为其中内容被绑定为创建的控制,其通过使用反射完成ContentPresenter
控件控制列表的窗口。有人可以解释我这种WPF事件的奇怪行为吗?
<TabControl.ContentTemplate>
<DataTemplate>
<ContentPresenter Content="{Binding sub}" Loaded="smb_Loaded">
</ContentPresenter>
</DataTemplate>
</TabControl.ContentTemplate>
创作,我需要一些东西做给创建的控件(他们中的每单一个)像subcribing到他们的活动或乳宁某些方法或线程之后,所以我想有它后,正在做初始化或创建对象。我试图在“初始化”或“加载”事件之后完成这些工作,但是只有在第一次加载时才会触发它们。 如果我用反射创建3个控件,我将有3个标签,其内容为ContentPresenters
,其中包含控件。当我选择一个标签时,该事件将被触发。如果我然后选择另一个,它将不会被触发,直到我重新运行该应用程序。
能否请你重新整理这部分:*的东西要做,以创建控件(他们中的每个人)*?这很难理解。 – DHN
选项卡控件有点特殊项目控制 - 它显示项目列表(选项卡项目),但只有一个内容演示者显示每个项目的内容。您可能想要听取选项卡控件上的SelectionChanged。 – XAMeLi
创建这些控件后,我将控件设置为内容展示器中的内容,如上面的代码中所示。在创建和插入表单之后,我需要了解这些动态创建的控件的几个事件以及一些初始化的东西。我需要一个事件在创建后触发,但“Isinitialized”事件仅在第一个控件上触发。从来没有在别人身上。 – user853710