WPF绑定用户控件加载事件未执行

本文关键字:事件 执行 加载 控件 绑定 用户 WPF | 更新日期: 2023-09-27 18:14:22

我有一个带有加载事件的用户控件,当我在XAML中将其包含在我的内容控件中时,它完美地执行了加载的事件。

但是,我已经将其更改为内容控件的动态绑定,现在加载的事件不会执行。

我的usercontrol的头部:

<UserControl x:Class="DesignSuite.CanvasTools.DrawCanvas"
         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"
         xmlns:my="clr-namespace:DesignSuite.CanvasTools" Loaded="UserControl_Loaded">

我使用模板以以下方式绑定内容控件:

<DataTemplate x:Key="FiniteStateMachineCanvasContentTemplate">
        <ContentControl Content="{Binding FiniteStateMachineCanvas}"/>
    </DataTemplate>

继承内容控制的Canvas显示良好,只有加载的事件没有执行。

绑定代码为:

public DrawCanvas FiniteStateMachineCanvas { get; set; }
    public FiniteStateMachineCanvasTab (
        string NewName,
        ref Toolstate toolstatemanager,
        ref FiniteStateMachineDescriptor finiteStateMachineDescriptor)
    {
        HeaderText = NewName;
        FiniteStateMachineCanvas = new DrawCanvas(ref toolstatemanager, canvastype_e.CANVAS_FINITESTATE, ref finiteStateMachineDescriptor);
    }

谁有好的方向的指针?

WPF绑定用户控件加载事件未执行

solved

忘记在我创建的新构造函数中执行initizecomponent,这就是问题的原因。