ロードされたものは正常に動作します。混乱させて申し訳ありません。
私はこのクラスをテストしました:
public class MyPath : Path
{
public MyPath()
{
Loaded += MyPath_Loaded;
}
void MyPath_Loaded(object sender, RoutedEventArgs e)
{
System.Diagnostics.Debug.WriteLine("Loaded");
}
public int Test1
{
get { return (int)GetValue(Test1Property); }
set
{
SetValue(Test1Property, value);
System.Diagnostics.Debug.WriteLine("Test1");
}
}
public static readonly DependencyProperty Test1Property =
DependencyProperty.Register("Test1", typeof(int), typeof(MyPath),
new PropertyMetadata(DependencyProperty.UnsetValue, null));
public int Test2
{
get { return (int)GetValue(Test2Property); }
set
{
SetValue(Test2Property, value);
System.Diagnostics.Debug.WriteLine("Test2");
}
}
public static readonly DependencyProperty Test2Property =
DependencyProperty.Register("Test2", typeof(int), typeof(MyPath),
new PropertyMetadata(DependencyProperty.UnsetValue, null));
public int Test3
{
get { return (int)GetValue(Test3Property); }
set
{
SetValue(Test3Property, value);
System.Diagnostics.Debug.WriteLine("Test3");
}
}
public static readonly DependencyProperty Test3Property =
DependencyProperty.Register("Test3", typeof(int), typeof(MyPath),
new PropertyMetadata(DependencyProperty.UnsetValue, null));
public int Test4
{
get { return (int)GetValue(Test4Property); }
set
{
SetValue(Test4Property, value);
System.Diagnostics.Debug.WriteLine("Test4");
}
}
public static readonly DependencyProperty Test4Property =
DependencyProperty.Register("Test4", typeof(int), typeof(MyPath),
new PropertyMetadata(DependencyProperty.UnsetValue, null));
public int Test5
{
get { return (int)GetValue(Test5Property); }
set
{
SetValue(Test5Property, value);
System.Diagnostics.Debug.WriteLine("Test5");
}
}
public static readonly DependencyProperty Test5Property =
DependencyProperty.Register("Test5", typeof(int), typeof(MyPath),
new PropertyMetadata(DependencyProperty.UnsetValue, null));
}
この XAML では:
<Grid Background="{StaticResource ApplicationPageBackgroundBrush}">
<local:MyPath Test1="1" Test2="2" Test3="3" Test4="4" />
</Grid>
そして、このトレースを取得しました:
Test1
Test2
Test3
Test4
Loaded
そして、Loaded が問題なく動作することがわかりました。私の以前のテストには、他の要因があったに違いありません。私の簡単なテストでは、Loaded が完璧に見えることを示しています。