我试图按照这里的文章 ,以一个自定义的控件添加到我的项目,这样我可以把它(“promptForPhotosetName”)像这样:
Popup popTart = new Popup();
popTart.Child = new promptForPhotosetName();
popTart.IsOpen = true;
我添加了一个自定义控制基于模板化控制我的项目。
我的自定义控制类(在Photrax命名空间)包含此构造函数:
public promptForPhotosetName()
{
this.DefaultStyleKey = typeof(promptForPhotosetName);
}
我有这样的\主题\ Generic.xaml,这是其他文件(promptForPhotsetName.cs沿)时,我添加了自定义控制已创建:
<ResourceDictionary
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:local="using:Photrax">
<Style TargetType="local:promptForPhotosetName">
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="local:promptForPhotosetName">
<StackPanel Orientation="Vertical">
<ListBox >
<ListBoxItem>
<StackPanel Orientation="Horizontal">
<Image Source="Windows 8.jpg" Height="200" Width="300" Stretch="Fill"></Image>
<Image Source="Windows_8.jpg" Height="200" Width="300" Stretch="Fill"></Image>
<Image Source="windows8(1).jpg" Height="200" Width="300" Stretch="Fill">
</Image>
</StackPanel>
</ListBoxItem>
</ListBox>
</StackPanel>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
</ResourceDictionary>
然而,我得到这个错误:“promptForPhotosetName”这个名字并不在命名空间中存在“使用:Photrax”“这都行XAML上:
<Style TargetType="local:promptForPhotosetName">
...还有这个:
<ControlTemplate TargetType="local:promptForPhotosetName">
为什么? 类promptForPhotosetName确实在Photrax命名空间!