我目前正致力于为我们公司的应用程序启用拖放支持。
我不断收到的错误对我来说似乎很奇怪。
它说的是,该属性在XML命名空间中不存在
The property 'DragDropHelper.IsDragSource' does not exist in XML namespace 'clr-namespace:DragAndDrop;assembly=DragAndDrop'. Line 61 Position 83
该物业是在我的样本在互联网找到,修改有点类的附加属性。这里是财产声明:
namespace DragAndDrop {
public class DragDropHelper
{
public static readonly DependencyProperty IsDragSourceProperty =
DependencyProperty.RegisterAttached("IsDragSource", typeof (bool), typeof (DragDropHelper),
new UIPropertyMetadata(false, IsDragSourceChanged));
public static bool GetIsDragSource(DependencyObject obj)
{
return (bool) obj.GetValue(IsDragSourceProperty);
}
public static void SetIsDragSource(DependencyObject obj, bool value)
{
obj.SetValue(IsDragSourceProperty, value);
}
在我看来,附加属性是完全有效的,不是吗? 这个DragDropHelper包含在一个类库中,我从主客户端应用程序中引用它。 当我尝试设置属性的值在客户端应用程序:
<ListView x:Uid="list" x:Name="CurrentFolderItemsControl" drag:DragDropHelper.IsDragSource="true" />
VS2010说,物业不XML命名空间存在。 XAML文档是资源字典 ,它合并到主客户端应用程序资源中,因为它包含我们控制的样式。
,因为我创建以来附加属性,然后设置属性值在XAML标记主应用程序中的类这更奇怪 - 编译OK
DragDropHelper类位于什么组合? – 2010-10-26 14:59:54
DragDropHelper类位于单独的类库中,并且我从主客户端应用程序引用库 – chester89 2010-10-26 15:02:26
您是如何在XAML中声明名称空间的? (xmlns:drag =“...”) – 2010-10-26 15:57:05