4

我看到许多其他人在其他问题中询问此错误消息,但我似乎对自己解决此问题的方法了解不够。我通过 WPF UserControl 创建了这个错误

public partial class EnterNewRequest : UserControl

但后来我想向 UserControl 添加一个方法,所以我使用继承将它粘贴在那里(不能使用扩展,因为我需要覆盖这个方法)。但是现在我的用户控件很不高兴,我不确定我需要更改 xaml 中的哪些内容。UserControl 更改块位于命名空间 RCO_Manager 中。这是我的 xaml:

<UserControl x:Class="RCO_Manager.EnterNewRequest"
         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" 
4

1 回答 1

9

我在使用 Windows Phone 时遇到了同样的问题。我不记得确切的例外情况,但您可以在 GitHub 上查看 XAML,在此处查看页面代码,在此处查看基本页面代码(我的是基本页面,而不是基本控件)。我需要添加一个新的XAML命名空间并更改<UserControl/>声明:

代码假设

namespace RCO_Manager
{
    // Inherits **Base**UserControl, not UserControl
    public partial class EnterNewRequest : BaseUserControl
    {
        // Magic goes here
        ...
    }
}

XAML

<local:BaseUserControl
    xmlns:local="clr-namespace:RCO_Manager"
    x:Class="RCO_Manager.EnterNewRequest"

边注

根据Baboon的说法,一旦在 中指定基类,就不需要在代码隐藏中指定它XAML,因此您可以更改代码隐藏以显示以下内容。我现在无法验证它,但你可以在让它工作后试一试。

public partial class EnterNewRequest // Don't specify BaseUserControl here
{
    ...
于 2012-04-04T12:42:03.393 回答