可访问性字体和颜色Phone 8.1

时间:2015-06-30 13:15:28

标签: c# windows-phone-8.1

我想将未读文本块的字体颜色更改为手机默认重音颜色,就像Outlook电子邮件客户端在Windows手机上所做的一样。我需要在提供的答案中创建一个画笔,所以不要重复,谢谢

<ListView.ItemTemplate>
        <DataTemplate>
            <StackPanel Orientation="Horizontal" Width="292" Height="130">
        <Border Height="100" Width="100" Margin="10,10,0,10">
            <Image Source="/Assets/termin.jpg" Stretch="UniformToFill"/>
        </Border>
        <StackPanel Orientation="Vertical" VerticalAlignment="Top" Margin="0,10,0,0">
            <TextBlock Text="{Binding description}" 
                       Margin="10,0,0,0" Width="200" Height="30" 
                       TextTrimming="WordEllipsis" TextWrapping="Wrap" HorizontalAlignment="Left"/>
            <TextBlock Text="{Binding Title}" 
                       Margin="10,2,0,0" Width="200" Height="30" 
                       TextTrimming="WordEllipsis" HorizontalAlignment="Left" 
                       FontSize="{ThemeResource ContentControlFontSize}" Opacity="0.49"/>


                </StackPanel>
            </StackPanel>

        </DataTemplate>
</ListView.ItemTemplate>

我想做的是当我从parse.com对象创建列表时,过滤未读属性,如下所示

if (parseObject.ContainsKey("unread"))
 {
    Boolean isUnread = (bool) parseObject["unread"];
    if (isUnread == true)
     {
       mlist.MessageColour = What do i place here for fone accent colur
       mlist.Unread = isUnread;
     }
}

我的问题是我应该在后面的代码中存储什么才能获得正确的强调颜色我看到如何使用xaml和主题资源进行操作但是请记住id将其绑定到文本块的syle属性。 / p>

也有人没有如何检索在setings accessabilty中设置的字体大小,或者我没有为我的应用设置字体大小以获得默认值。

1 个答案:

答案 0 :(得分:0)

Windows Phone中的所有与颜色相关的内容,以及某些程度上的WPF或使用XAML编写的任何内容都是抽象类型Brush。您需要创建一个画笔 - 在单色SolidColorBrush的情况下 - 并将其设置为TextBlock的前景。如果要将其绑定到View,则需要一个Brush类型的属性。

下面的代码段可以解决问题。

var color = (Color)Application.Current.Resources["PhoneAccentColor"];
mlist.MessageColour = new SolidColorBrush(color);