在 Windows 通用应用程序中将字符串类型转换为 Windows.UI.Color



我正在尝试制作一个程序来解析具有预定义格式的xml文件,并将一些UI控件添加到Windows通用应用程序中的主页。

在某些部分,我需要在相关的xml文件中指定我的TextBlocks的背景颜色,所以我正在寻找一种转换字符串属性的方法,从xml读取并将其转换为Windows.UI.Color相应的值。

这是我的 XML 文件和我的 C# 代码来添加控件

.xml:

<test-unit name ="FOG_LAMP"  text ="Fog Lamp"  mode ="DIG_IN" color="ORANGE"/>

C#:

public void AddNewTextBlock(String Name, String Text, String Color)
{
TextBlock NewTextBlock = new TextBlock();
NewTextBlock.Name = Name;
NewTextBlock.Text = Text;
NewTextBlock.FontSize = 24;
myGrid.Children.Add(NewTextBlock);
}

感谢您的帮助

您可以使用XamlBindingHelperstring值转换为Color-

var color = (Color)XamlBindingHelper.ConvertValue(typeof(Color), "ORANGE");
var brush = new SolidColorBrush(color);
NewTextBlock.Foreground = brush;

使用 UWPCommunityToolkit 的颜色助手。

Color redColor = "Red".ToColor();
Color redColor = ColorHelper.ToColor("#ff3a4ab0");    //For Alpha code

最新更新