【Windows Phone 8】值轉換器
前言:當資料用Binding的方式顯示時,資料是A他就只會顯示A但有時這往往不是我們要的結果,這時就需要實作一個值轉換器改變輸出的資料。(這裡只將實作OneWay模式)
為了測試方便新建一個【Windows Phone 資料繫結應用程式】
將【方案總管】>【ViewModels】>【MainViewModel.cs】檔開啟
將【LoadData】方法中【LineOne】資料修改為下圖中
實作:
Step-1 建立類別實作IValueConverter介面
class DateConverter : IValueConverter
    {
        public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
        {
            return null;
        }
        public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
        {
            return null;
        }
    }
Step-2 將Convert方法內的程式碼改為下列(決定回傳型態)
string a = value.ToString();
            var color=new SolidColorBrush();
            switch(a)
            {
                case "R":
                    color=new SolidColorBrush(Colors.Red);
                    break;
                case "G":
                    color = new SolidColorBrush(Colors.Green);
                    break;
                case "B":
                    color = new SolidColorBrush(Colors.Blue);
                    break;
            }
            return color;
Step-3 加入值轉換器(以Background為例)
執行結果:
深入了解:IValueConverter 介面







