【问题标题】:Can't refer to a custom user control无法引用自定义用户控件
【发布时间】:2017-04-12 16:26:26
【问题描述】:

我有一个自定义用户控件,我想将它包含在主页中。
ColorPalette.xaml.h(它还包含 xamlxaml.cpp 文件,只是我没有发布它们)

namespace Colibry
{
    namespace Views {
        [Windows::Foundation::Metadata::WebHostHidden]
        public ref class ColorPalette sealed
        {
        public:
            ColorPalette();
        };
    }
}

MainPage.xaml

<Page
    x:Class="Colibry.MainPage"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:local="using:Colibry"
    xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
    xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
    xmlns:cc="clr-namespace:Colibry.Views;assembly:Colibry"
    mc:Ignorable="d">
    <Grid Background="{ThemeResource ApplicationPageBackgroundThemeBrush}">
        <cc:ColorPalette></cc:ColorPalette>
    </Grid>
</Page>

但是xmlns:cc="clr-namespace:Colibry.Views;assembly:Colibry" 输出错误:

Универсальный код ресурса (URI) "clr-namespace:Colibry.Views;assembly:Colibry" не является допустимым идентификатором пространства имен。 Colibry E:\Projects\Colibry\Colibry\MainPage.xaml

对于英国人:

URI "clr-namespace:Colibry.Views;assembly:Colibry" 不是名称空间的可用标识符。 Colibry E:\Projects\Colibry\Colibry\MainPage.xaml

如何解决?只是我只学习 C++/XAML。

【问题讨论】:

    标签: c++ .net xaml uwp


    【解决方案1】:

    WPF/Silverlight/Windows Phone 8方式:

    xmlns:controls="clr-namespace:MyApp.Controls"

    WinRT/通用应用方式:

    xmlns:controls="using:MyApp.Controls"

    使用一个平台的语法将无法在另一个平台上编译,反之亦然。 “clr-namespace 和 using”之间存在细微差别。这两篇文章对此进行了更详细的讨论。 XAML Namespaces and Namespace Mapping for WPF XAMLXAML namespaces and namespace mapping

    最重要的是,您可以将“clr-namespace”更改为“using”并删除任何程序集标记和分号(将推断程序集)。结果如下所示:

      xmlns:cc="using:RefCustomControlTest"
    

    我使用了自定义用户控件,如下面的代码,它工作得很好。

    <Grid Background="{ThemeResource ApplicationPageBackgroundThemeBrush}">
      <cc:ColorPalette x:Name="test" />
    </Grid>
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-10-19
      • 1970-01-01
      相关资源
      最近更新 更多