Windows phone 7 文本块样式绑定

Windows phone 7 文本块样式绑定,windows-phone-7,binding,text,coding-style,textblock,Windows Phone 7,Binding,Text,Coding Style,Textblock,我想用Viewmodel绑定更改代码中的文本块颜色或样式。 这就是我得到的: <TextBlock Visibility="{Binding SubTitleVisibility}" Text="{Binding SubTitle1}" TextWrapping="Wrap" Margin="12,-6,12,0" Style="{Binding SubColor}"/> 我找到了这个代码片段,但它甚至不会进入子颜色的ge

我想用Viewmodel绑定更改代码中的文本块颜色或样式。 这就是我得到的:

<TextBlock 
     Visibility="{Binding SubTitleVisibility}" 
     Text="{Binding SubTitle1}" 
     TextWrapping="Wrap" 
     Margin="12,-6,12,0" 
     Style="{Binding SubColor}"/>
我找到了这个代码片段,但它甚至不会进入子颜色的get方法


提前感谢您的帮助。

您的方法是错误的。不应尝试将样式绑定到ViewModel,而应使用

    internal DisplayMode Mode
    {
        get
        {
            return _mode;
        }
        set
        {
            //if (value != _type)
            //{
            _mode = value;
            if (value.Equals(DisplayMode.EditMode) && _type.Equals(ItemType.WithIcon))
            {
                _iconVisibility = Visibility.Visible;
                SubTitleVisibility = Visibility.Collapsed;
            }
            else if (_type.Equals(ItemType.WithSubTitle))
            {
                _iconVisibility = Visibility.Collapsed;
                SubTitleVisibility = Visibility.Visible;
            }

            NotifyPropertyChanged("Mode");
            NotifyPropertyChanged("SubColor");
        }
    }

    internal Style SubColor
    {
        get
        {
            Style temp; 
            if (_group != "phone" && _group != "email" && _mode == DisplayMode.ViewMode)
                temp = (Style)App.Current.Resources["PhoneTextNormalStyle"];
            else
                temp = (Style)App.Current.Resources["PhoneTextAccentStyle"];

            return temp;
        }
    }