Я создал gridview
, как показано на рисунке ниже. В котором каждый элемент состоит из stackpanel
, содержащего и изображение, и текстовый блок. Я хочу изменить цвет фона gridviewitem
и textblock
при наведении gridviewitem
.
Мне удалось изменить цвет фона элемента gridview
с помощью PointerOverBackground
в gridviewitempresenter
. Как я могу изменить цвет текстового блока при наведении?
Я пробовал этот код, но я уверен, что будет лучший способ добиться этого
private void StackPanel_PointerEntered(object sender, PointerRoutedEventArgs e)
{
StackPanel sp = (StackPanel)sender;
foreach (var item in sp.Children)
{
if (item.GetType().Equals(typeof(TextBlock)))
{
TextBlock tb = item as TextBlock;
brush = new SolidColorBrush();
brush.Color = Color.FromArgb(0, 0, 0, 0);
tb.Foreground = brush;
}
}
}