2012-12-05 35 views
1

我使用VS 2012和Blend的Windows 8.當我使用轉換器在我的Windows Phone和Silverlight應用程序時,我會點擊新的轉換,並從我的轉換器中選擇我的轉換器名單。現在我已經升級到VS 2012和Blend for Windows 8,我的自定義轉換器都沒有顯示出來。任何人都知道如何找到轉換器?IValueConverter不工作VS2012-混合贏得8

class Class1 : IValueConverter 
{ 
    public object Convert(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture) 
    { 
     throw new NotImplementedException(); 
    } 

    public object ConvertBack(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture) 
    { 
     throw new NotImplementedException(); 
    } 
} 
+0

奇怪,他們工作我在WP8中。你確定你的項目中有一個對System.Windows.Data的引用嗎? – robertk

+0

是的。它只是一個簡單的新項目wp8然後我添加一個轉換器,然後嘗試使用顯示所有綁定。我創造的東西都不會顯示出來。我知道它適用於Windows 8應用程序,但不適用於wp8 ... VS2012和Blend不會顯示它們。它只是奇怪。 –

+0

你可以發佈多一點你的代碼嗎?例如,你的.xaml頁面? – robertk

回答

1

從來沒做過,你在發佈註釋的方式(你有你的轉換器命名空間的引用?),不過這工作。參考你的轉換器的命名空間添加ontop的您的.xaml的:

xmlns:converters="clr-namespace:Appname.Views.Converters" 

然後聲明轉換器:

<phone:PhoneApplicationPage.Resources> 
    <converters:SavedTrackColorConverter x:Key="SavedTrackColorConverter" /> 
</phone:PhoneApplicationPage.Resources> 

然後用在需要的地方轉換器:

<TextBlock Foreground="{Binding ListboxStringSavedTunes, Converter={StaticResource SavedTrackColorConverter}}" Text="{Binding ListboxStringSavedTunes}"/> 
+0

Blend總是添加一切,我會嘗試手動添加它,但它似乎很奇怪,該軟件用於添加引用,現在它不? –

+0

可悲的是你是對的。 VS 2012和Blend for Windows 8不再添加引用。我還注意到,當您嵌入字體時,您現在必須手動完成所有代碼以用於Windows應用商店。這很令人傷心,因爲這些功能是2010年的一部分。爲什麼MS會刪除一些讓開發人員工作更少的東西?也許我們應該回到記事本並忘記VS. –