[英]Can't refer to a custom user control
我有一個自定義用戶控件,我想將其包含在主頁中。
ColorPalette.xaml.h (它還包括xaml
和xaml.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命名空間: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。
WPF / Silverlight / Windows Phone 8方式:
xmlns:controls="clr-namespace:MyApp.Controls"
WinRT / Universal App方式:
xmlns:controls="using:MyApp.Controls"
使用一個平台的語法將無法在另一個平台上編譯,反之亦然。 “ clr-namespace和using”之間有很小的區別。這兩篇文章對此進行了更詳細的討論。 WPF的XAML命名空間和命名空間映射XAML和XAML命名空間和命名空間映射 。
最重要的是,您可以將“ clr-namespace”更改為“ using”,並刪除所有程序集標記和分號(將推斷出程序集)。 結果看起來像這樣:
xmlns:cc="using:RefCustomControlTest"
我已經使用了像下面的代碼這樣的自定義usercontrol,它工作得很好。
<Grid Background="{ThemeResource ApplicationPageBackgroundThemeBrush}">
<cc:ColorPalette x:Name="test" />
</Grid>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.