【问题标题】:Check if a TextBlocks text is a certain Color检查 TextBlocks 文本是否为某种颜色
【发布时间】:2013-02-28 08:22:50
【问题描述】:

有没有办法检查TextBlock 的文字是否是某种颜色。 我的意思是,有没有办法说:

if(textblocks foreground is blue)
//do stuff

当我在这里时,有人知道如何随机更改TextBlock 的前景吗?

【问题讨论】:

  • @McAuley...这是asp.net,mvc....哪个版本的.Net框架?
  • @MikeTWebb 它是一个适用于 windows 8 的应用程序
  • 它不受前景色甚至颜色的支配吗?
  • 代码会根据应用的类型而有所不同。它是网络应用还是桌面应用?
  • 哦,我明白了,它是一个桌面应用程序

标签: c# microsoft-metro


【解决方案1】:

假设你使用的是SolidColorBrush,你可以试试这个

SolidColorBrush b = myTextBlock.Foreground as SolidColorBrush;
if (b != null)
{
   if(b.Color == Windows.UI.Colors.Blue)
   {
      //your code
   }
}

要设置随机颜色,您可以选择随机颜色进行选择和设置。您可以使用Random,如下所示,或从KnownColor 中选择here

Random rnd = new Random();     

myTextBlock.Foreground = new SolidColorBrush
                   (Color.FromArgb(rnd.Next(255), rnd.Next(255), rnd.Next(255)));

【讨论】:

  • 我不得不说 if (b.Color == Windows.UI.Colors.Blue) 但它奏效了!谢谢!
  • 感谢您告诉我,我会更新答案。如果这回答了您的问题,您可以按左侧的“勾选”标记。
猜你喜欢
  • 2020-07-12
  • 2011-05-24
  • 1970-01-01
  • 1970-01-01
  • 2016-06-18
  • 1970-01-01
  • 2012-10-02
  • 1970-01-01
  • 2013-09-01
相关资源
最近更新 更多