実行時に動的に多くのテキストブロックが追加されたスタックパネルがあります。他のすべてがデフォルトの白のまま(または元に戻される)になっていることを確認しながら、タップしたテキストブロックのフォントの色を(赤に)変更する最良の方法は何ですか。
私はすでに色を細かく変更するオンタップハンドラーを持っていますが、最初のテキストブロックが白に戻らないため、別の/ 2番目のテキストブロックをクリックすると問題が発生します。私は私が次の線に沿って何かを探していると思います:
foreach (TextBlock tbl in MyStackPanel)
{
// change all text to white
}
// Get the tapped one and change it to red
ただし、コンパイラーでは許可されないため、stackpanelの子を反復処理することはできません。これを行うためのより良い方法はありますか?
Children
繰り返すことができるプロパティがあります。
foreach (var tb in MyStackPanel.Children.OfType<TextBlock>())
tb.Foreground = Brushes.White;
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加