WPF - 与命名空间混淆和“奇怪”错误

时间:2009-07-27 19:24:41

标签: wpf xaml xml-namespaces

我一直试图了解XAML及其名称空间,我似乎无法获得事物的逻辑。例如,我正在尝试按照教程设置gridrow的GridLength属性。我可以让示例代码运行得很好。但试图将功能实际移植到我自己的代码中似乎是不可能的。我总是遇到源代码中没有出现的奇怪错误。无法为GridLength属性设置动画,因此我需要创建一个包含使其成为可能的代码的新.vb文件。

但是试图真正达到那里的东西我无法开始工作。

在我的Window.xaml文件中,我将它放在顶部:

xmlns:gridanim="clr-namespace:HDI_WPF_GridAnimation_vb"

以GridLengthAnimation.vb文件为目标。在那个文件中你有这个:

Imports System.Windows.Media.Animation
Imports System.Windows

Public Class GridLengthAnimation
    Inherits AnimationTimeline

回到Window.xaml,接触“GridLengthAnimation”是不可能的:

<gridanim:GridLengthAnimation></gridanim:GridLengthAnimation>

我收到一条错误消息:

The name "GridLengthAnimation" does not exist in the namespace "clr-namespace:HDI_WPF_GridAnimation_vb".

导致问题的原因是什么?

2 个答案:

答案 0 :(得分:0)

我在你的课堂上看不到你的名字空间声明

  Imports System.Windows.Media.Animation
  Imports System.Windows
  Namespace HDI_WPF_GridAnimation_vb
   Public Class GridLengthAnimation
      Inherits AnimationTimeline

答案 1 :(得分:0)

如果HDI_WPF_GridAnimation_vb命名空间与Window.xaml不在同一个程序集中,则需要通过添加它来引用程序集,如下所示:
xmlns:gridanim="clr-namespace:HDI_WPF_GridAnimation_vb;assembly=asmName"