如何在Xamarin窗体中同时更改多个标签的文本颜色
本文关键字:标签 颜色 文本 Xamarin 窗体 | 更新日期: 2023-09-27 18:13:24
我在Grid
中有多个Label
s,它们位于不同的网格行和列中。每当我在设置中选择不同的主题颜色时,我想将所有标签的字体颜色更改为一种颜色。目前我在c#中有以下代码:
correctLabel.TextColor = Color.Black;
textLabel.TextColor = Color.Black;
emptyLabel.TextColor = Color.Black;
detail1.TextColor = Color.Black;
detail2.TextColor = Color.Black;
detail3.TextColor = Color.Black;
如您所见,如果我决定添加更多的Label
,则此代码可能更长。有没有办法在一行中完成这个?
你的问题已经导致了正确的假设,你不应该对每个视图元素都这样做。
如果您能够使用2.3预览版,它内置了对主题的支持,请查看文档。
在2.3版本之前,您可以使用ControlTemplate
s,在这里可以找到一个很好的示例。
Edit:如果你的目标不是整个应用的主题,你可以在你熟悉的视图模型中绑定一个颜色,通过改变那个颜色,标签颜色会适应它。我想这可能更接近单行的方法。