C# 如何创建类型为'的附加属性;键入';?

C# 如何创建类型为'的附加属性;键入';?,c#,wpf,C#,Wpf,您好,我尝试创建类型为类型的附加属性,如下所示: public static Type GetTargetType(DependencyObject obj) { return (Type)obj.GetValue(TargetTypeProperty); } public static void SetTargetType(DependencyObject obj, Type value) { obj.SetValue(T

您好,我尝试创建类型为
类型的附加属性,如下所示:

   public static Type GetTargetType(DependencyObject obj)
    {
        return (Type)obj.GetValue(TargetTypeProperty);
    }

    public static void SetTargetType(DependencyObject obj, Type value)
    {
        obj.SetValue(TargetTypeProperty, value);
    }


    public static readonly DependencyProperty TargetTypeProperty =
        DependencyProperty.RegisterAttached("TargetType", typeof(Type), typeof(MyHelper), new PropertyMetadata(null, OnTargetPropertyChanged));

    private static void OnTargetPropertyChanged(DependencyObject d, DependencyPropertyChangedEventArgs e)
    {
        // and here i want to use this type.
    }
在XAML代码中:

// ...
     <myControl MyHelpeers:MyHelper.TargetType="{x:Type local:myclass}"/>
//...
/。。。
//...
我在谷歌上搜索了一下,找到了一种创建类型表单字符串的方法。但我不喜欢那样。 请帮帮我。
谢谢。

该值在事件参数中,即,只需将其强制转换为
类型

var type = (Type)e.NewValue;

出于好奇,什么是应用程序?你为什么要这样做?你到底有什么问题?您有一个类型为
type
的附加属性,那么为什么要从
字符串创建
type
?直接使用
类型
实例。@user2588666,这样做有很多原因。我使用了
类型的附加属性
使我的拖放功能可以通过使用附加属性类型安全访问。