2011-09-28 115 views
2

我加入了TiltEffect.IsTiltEnabled屬性我HubTile傾斜效果的HubTile

<toolkit:HubTile toolkit:TiltEffect.IsTiltEnabled="True" Title="title" Message="This is message" x:Name="name" DisplayNotification="False" Source="pB.png" Tap="tap" /> 

我還添加了HubTile型的TiltableItems集合在頁面的構造函數,每:

public HubPage() 
{ 
    TiltEffect.TiltableItems.Add(typeof(HubtTile)); 
} 

但HubTile沒有傾斜效果....

謝謝!

回答

0

獲得從Updated Tilt Effect - Peter Torr's Blog TiltEffect或從Silverlight Toolkit - Downloads 下載Silverlight工具包源代碼,然後在TiltEffect.csHubTile類添加到「tiltableItems」的名單:

/// <summary> 
    /// Default list of items that are tiltable 
    /// </summary> 
    static List<Type> tiltableItems = new List<Type>() { typeof(ListBoxItem) , typeof(HyperlinkButton) , typeof(HubTile) }; 

如果你決定修改工具包,是確定在Release上構建項目,並將您在自己的應用程序中創建的.dll作爲目標。

+0

我不會推薦。檢查代碼上的日期。 Silverlight工具包中的傾斜效果是更好的實現。 –

+0

@ClausJørgensen不作任何假設:)但無論如何,下載silverlight工具包並在那裏更新它。我將編輯原始帖子 –

7

嘗試增加你的HubTileHyperLinkButton內容或Button支持TiltEffect

添加StylePhoneApplicationPage.Resources該協會致力於ButtonHyperLinkButton,增加了其他控件的支持,Content

<phone:PhoneApplicationPage.Resources> 
    <Style x:Key="EmptyButtonStyle" TargetType="primitives:ButtonBase"> 
     <Setter Property="Background" Value="Transparent" /> 
     <Setter Property="Padding" Value="0" /> 
     <Setter Property="Template"> 
      <Setter.Value> 
       <ControlTemplate TargetType="primitives:ButtonBase"> 
        <Border Background="{TemplateBinding Background}" Padding="{TemplateBinding Padding}"> 
         <ContentPresenter HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}" VerticalAlignment="{TemplateBinding VerticalContentAlignment}" Content="{TemplateBinding Content}" ContentTemplate="{TemplateBinding ContentTemplate}"/> 
        </Border> 
       </ControlTemplate> 
      </Setter.Value> 
     </Setter> 
    </Style> 
</phone:PhoneApplicationPage.Resources> 

還要添加原語名稱空間到頁面

xmlns:primitives="clr-namespace:System.Windows.Controls.Primitives;assembly=System.Windows" 

然後用你的HubTileHyperLinkButtons的(或ButtonContent這樣

<HyperlinkButton Style="{StaticResource EmptyButtonStyle}"> 
    <toolkit:HubTile toolkit:TiltEffect.IsTiltEnabled="True" Title="title" Message="This is message" x:Name="name" DisplayNotification="False" Source="pB.png" Tap="tap" /> 
</HyperlinkButton> 

這將最終支持TiltEffectHubTile

0

我發現其他簡單的解決方案,它的偉大工程時HubTile是用作ListBox.ItemTemplate

只需HubTile瞧設置TiltEffect.IsTiltEnabled="True"在ListBox和IsHitTestVisible="False" - 它的工作原理:)你可以到HubTile點擊通過ListBox.SelectionChanged事件和HubTile有工作傾斜效果還是響應。

0

Hubtile默認情況下不會被添加到列表TiltableItems並需要添加manullay ... 添加以下代碼到代碼隱藏

public MainPage() 
     { 
      InitializeComponent(); 
      TiltEffect.TiltableItems.Add(typeof(HubTile)); 
      // Sample code to localize the ApplicationBar 
      //BuildLocalizedApplicationBar(); 
     } 

和下面的行添加到您的hubtile或網格包含樞紐瓦

<phone:PanoramaItem CacheMode="{x:Null}" Header="item3" toolkit:TiltEffect.IsTiltEnabled="True">