2012-09-01 98 views

回答

3

根據MSDN上的文檔,該功能(例如Binding class上的StringFormat)在WinRT中不存在。

所以做你的視圖模型

public class MyViewModel 
{ 
    public IList<Product> Products { get; set; } 

    public string ProductsText 
    { 
     get 
     { 
      return string.Format("{0} Products", Products.Count); 
     } 
    } 
} 

注意你可以連接到跟蹤您Products收集的變化,並通知ProductsText屬性更改格式。

並綁定到格式化的屬性:

<TextBlock Text="{Binding ProductsText}" /> 
+0

或者你可以寫一個'IValueConverter'或使用'ContentControl'和由多個部分建立你的文字,我想有多種方法,但我強烈建議在視圖模型上進行。因爲Viewmodels是爲了這個。 – nemesv

+0

完美 - 謝謝! –

8

您可以使用此:

<TextBlock> 
    <Run Text="{Binding Path=Products.Count}" /> 
    <Run Text=" Products" /> 
</TextBlock> 
相關問題