我有一些WPF XAML代码,当我尝试使Silverlight等效时,我遇到了一些重大问题。现在,在任何人开始咆哮这两个人是如何不交叉兼容之前,我已经知道了。我需要创建一个与我现在的代码具有相似外观的Silverlight应用程序。我能够将所有的C#类转换为但是XAML代码很痛苦。这是WPF的XAML代码,我遇到了问题:
<ControlTemplate x:Key="DesignerItemTemplate" TargetType="ContentControl">
<Grid DataContext="{Binding RelativeSource={RelativeSource TemplatedParent}}">
<s:MoveThumb Template="{StaticResource MoveThumbTemplate}" Cursor="SizeAll"/>
<ContentPresenter Content="{TemplateBinding ContentControl.Content}"/>
</Grid>
</ControlTemplate>
问题是我在s:下看不到MoveThumb,这是我项目的命名空间(MoveThumb是一个C#类)。任何建议都将不胜感激。
修改 以下是Silverlight项目的所有代码。要意识到我没有完成这个过渡,我不一定在代码的其他部分寻求其他问题的帮助;只是这一部分(设计师项目模板下的部分。
<UserControl x:Class="SilverlightFlowConnectors.MainPage"
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"
xmlns:s="clr-namespace:SilverlightFlowConnectors"
mc:Ignorable="d"
d:DesignHeight="300" d:DesignWidth="400">
<UserControl.Resources>
<!-- MoveThumb Template -->
<ControlTemplate x:Key="MoveThumbTemplate" TargetType="s:MoveThumb">
<Rectangle Fill="Transparent"/>
</ControlTemplate>
<!-- Designer Item Template-->
<ControlTemplate x:Key="DesignerItemTemplate" TargetType="ContentControl">
<Grid DataContext="{StaticResource MoveThumbTemplate}">
</Grid>
</ControlTemplate>
</UserControl.Resources>
<Canvas>
<ContentControl Width="130"
MinWidth="50"
Height="130"
MinHeight="50"
Canvas.Top="150"
Canvas.Left="470">
<Ellipse Fill="Red"
IsHitTestVisible="False"/>
</ContentControl>
<ContentControl Width="130"
MinWidth="50"
Height="130"
MinHeight="50"
Canvas.Top="150"
Canvas.Left="150">
<Path Fill="Blue"
Data="M 0,5 5,0 10,5 5,10 Z"
Stretch="Fill"
IsHitTestVisible="False"/>
</ContentControl>
<ContentControl Width="130"
MinWidth="50"
Height="130"
MinHeight="50"
Canvas.Top="150"
Canvas.Left="150"
Template="{StaticResource DesignerItemTemplate}">
<Path Fill="Blue"
Data="M 0,5 5,0 10,5 5,10 Z"
Stretch="Fill"
IsHitTestVisible="False"/>
</ContentControl>
</Canvas>
答案 0 :(得分:0)
您需要创建指定命名空间短字符串s
,其目标是您当前拥有MoveThumb的位置,或修复您移植的列表。如果没别的话,只需用智能感知帮助重做s
。