如何让StackPanel像UWP中的ListView项一样改变背景?

时间:2016-05-19 12:25:15

标签: c# uwp

我有StackPanel。我希望在点击它时更改背景,例如ListView中点击的项目。

2 个答案:

答案 0 :(得分:0)

你必须处理Stackpanel Tapped event并在那里做逻辑。 例如

private void panel_Tapped(object sender, TappedRoutedEventArgs e)
{
 panel.Background = ...
}

答案 1 :(得分:0)

如果您只需要Xaml方法,则可以添加Behaviours SDK

轻松 Visual Studio 2015的混合通过点击资源然后提示添加Nuget Package Behaviours

来简化此操作

使用 Tapped 事件将StackPanel背景从红色更改为绿色的示例

首先检查页面顶部是否有以下2个命名空间

xmlns:Interactivity="using:Microsoft.Xaml.Interactivity"
xmlns:Core="using:Microsoft.Xaml.Interactions.Core"

然后添加以下

<StackPanel x:Name="myPanel" Height="200" Width="200" Background="Red">
    <Interactivity:Interaction.Behaviors>
        <Core:EventTriggerBehavior EventName="Tapped">
            <Core:ChangePropertyAction TargetObject="{Binding ElementName=myPanel}" PropertyName="Background" Value="Green" />
            </Core:EventTriggerBehavior>
    </Interactivity:Interaction.Behaviors>
</StackPanel>