2014-02-14 79 views
0

我有一些WPF XAML代碼,在嘗試製作Silverlight等效項時遇到了一些主要問題。現在,在任何人開始咆哮兩個人不交叉兼容之前,我已經知道了。我需要創建一個與我現在的代碼具有相似外觀和感覺的Silverlight應用程序。我能夠獲得所有C#類的轉換,但XAML代碼很痛苦。下面是我在遇到問題的WPF的XAML代碼:將WPF XAML代碼移植到Silverlight 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> 

的問題是,我無法看到項下的:,這是我的項目的命名空間(MoveThumb是一個C#類)MoveThumb。任何建議將不勝感激。

編輯 這裏是所有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

SL沒有SizeAll光標,很難說其餘的不知道你如何設置你的名字空間。 –

回答

0

您需要創建指定命名空間短字符串s它的目標,你必須MoveThumb目前或收拾你移植過上市,只是重做s與intellisense的幫助,如果沒有別的。

+0

我已經做到了這一點(我沒有覺得需要以包含不完全必要的代碼)。智能感知將會照片在控制模板之外將我的課程上移,但不在其中。 – Chris

+0

@ user3311309's'是否包含您可以在xaml中訪問的任何其他項目?這可能會給你一個線索爲什麼's'不工作。 – OmegaMan

+0

在ControlTemplate之外,我可以訪問我所有的課程。就在ControlTemplate內部,我只能訪問MainPage。在Grid內部,我無法訪問任何內容。這真的讓我難住。我覺得我在這裏錯過了一些東西。 – Chris