Window Phone 8.1中的用户控件

时间:2014-10-28 10:55:28

标签: asp.net silverlight windows-phone-8

我尝试创建应用,我需要使用用户控件。我已经创建了 MainPage.xaml 这里的代码

<phone:PhoneApplicationPage
x:Class="test.MainPage"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:phone="clr-namespace:Microsoft.Phone.Controls;assembly=Microsoft.Phone"
xmlns:shell="clr-namespace:Microsoft.Phone.Shell;assembly=Microsoft.Phone"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
mc:Ignorable="d"
 xmlns:local="clr-namespace:test"
FontFamily="{StaticResource PhoneFontFamilyNormal}"
FontSize="{StaticResource PhoneFontSizeNormal}"
Foreground="{StaticResource PhoneForegroundBrush}"
SupportedOrientations="Portrait" Orientation="Portrait"
shell:SystemTray.IsVisible="True">

<!--LayoutRoot is the root grid where all page content is placed-->

用户控制定义如下:

<UserControl x:Class="test.UserControls"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
mc:Ignorable="d"
FontFamily="{StaticResource PhoneFontFamilyNormal}"
FontSize="{StaticResource PhoneFontSizeNormal}"
Foreground="{StaticResource PhoneForegroundBrush}" Height="50" Width="427">


<Canvas x:Name="SpatialCanvas" Background="Wheat">
    <Border 
        x:Name="dragSelectionBorder"
        BorderBrush="Blue"
        BorderThickness="1"
        Background="LightBlue"
        CornerRadius="1"
        Opacity="0.5"
        />
</Canvas>

如何将此用户控件调用 MainPage.xaml

1 个答案:

答案 0 :(得分:1)

您有xmlns:local="clr-namespace:test",这是对您的MainPage和自定义UserControl的命名空间的引用。

所以要在MainPage上使用它

<local:USER_CONTROL_NAME/>

在您的情况下,您的UserControl名为UserControls(您应该重新考虑重命名)

所以最后要使用你的自定义控件

<local:UserControls/>