无法创建自定义windows phone控件

本文关键字:phone 控件 windows 自定义 创建 | 更新日期: 2023-09-27 18:07:05

我正试图为我的Windows Phone 8.1项目创建一个自定义模板控件,但无论我做什么,它都会给我以下例外:

创建"系统"失败。从文本中键入'"local2: CustomControl1"。

我真的很感激你的帮助。这是我当前的代码

PivotPage.xaml:

    <Page
        x:Class="App1.PivotPage"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        xmlns:controls="using:App1.Controls"
        xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
        xmlns:data="using:App1.Data"
        xmlns:local="using:App1"
        xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
        Background="{ThemeResource ApplicationPageBackgroundThemeBrush}"
        DataContext="{Binding DefaultViewModel, RelativeSource={RelativeSource Self}}"
        mc:Ignorable="d">
    <Grid>
        <controls:CustomControl1 />
    </Grid>
</Page>

CustomControl1.cs

using System;
using System.Collections.Generic;
using System.Linq;
using System.Runtime.InteropServices.WindowsRuntime;
using Windows.UI.Xaml;
using Windows.UI.Xaml.Controls;
using Windows.UI.Xaml.Data;
using Windows.UI.Xaml.Documents;
using Windows.UI.Xaml.Input;
using Windows.UI.Xaml.Media;
// The Templated Control item template is documented at http://go.microsoft.com/fwlink/?LinkId=234235
namespace App1.Controls
{
    public sealed class CustomControl1 : Control
    {
        public CustomControl1()
        {
            this.DefaultStyleKey = typeof(CustomControl1);
        }
    }
}

Generic.xaml

<ResourceDictionary
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:local="using:App1">
    <Style TargetType="local2:CustomControl1" xmlns:local2="using:App1.Controls">
        <Setter Property="Template">
            <Setter.Value>
                <ControlTemplate TargetType="local2:CustomControl1">
                    <Border
                        Background="{TemplateBinding Background}"
                        BorderBrush="{TemplateBinding BorderBrush}"
                        BorderThickness="{TemplateBinding BorderThickness}">
                    </Border>
                </ControlTemplate>
            </Setter.Value>
        </Setter>
    </Style>
</ResourceDictionary>

无法创建自定义windows phone控件

试试这个:

<ResourceDictionary
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:local="using:App1" xmlns:local2="using:App1.Controls">
<Style TargetType="local2:CustomControl1" >
    <Setter Property="Template">
        <Setter.Value>
            <ControlTemplate TargetType="local2:CustomControl1">
                <Border
                    Background="{TemplateBinding Background}"
                    BorderBrush="{TemplateBinding BorderBrush}"
                    BorderThickness="{TemplateBinding BorderThickness}">
                </Border>
            </ControlTemplate>
        </Setter.Value>
    </Setter>
</Style>