首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在Universal Windows Platform App中自定义MyToolkit DataGrid中的特定行数据

在Universal Windows Platform App中自定义MyToolkit DataGrid中的特定行数据
EN

Stack Overflow用户
提问于 2016-07-26 22:28:04
回答 1查看 386关注 0票数 0

我正在开发windows应用程序。在该应用程序中,我使用了MyToolkit数据网格。我想通过使特定的单元格数据在特定的情况下闪烁来突出显示数据网格的行。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-07-27 16:48:28

您可以在项目中安装Microsoft.Xaml.Behaviors.Uwp.Managed。然后使用DataTriggerBehavior使特定单元格数据在特定情况下闪烁。

首先,您需要像这样使用这个包:

代码语言:javascript
复制
xmlns:Interactivity="using:Microsoft.Xaml.Interactivity"
xmlns:Core="using:Microsoft.Xaml.Interactions.Core"
xmlns:Media="using:Microsoft.Xaml.Interactions.Media"

例如,您可以这样设计DataGrid的单元格:

代码语言:javascript
复制
<controls:DataGridTemplatedColumn  Width="0.7*" CanSort="False" Header="LastName">
    <controls:DataGridTemplatedColumn.CellTemplate>
        <DataTemplate>
            <Grid Height="30">
                <Grid.Resources>
                    <Storyboard x:Key="std" x:Name="std">
                        <ColorAnimation From="Red" To="Blue" Duration="0:0:3" RepeatBehavior="Forever" AutoReverse="True"
                            Storyboard.TargetProperty="(Background).(SolidColorBrush.Color)"
                            Storyboard.TargetName="lastnamePanel" />
                    </Storyboard>
                </Grid.Resources>
                <StackPanel Name="lastnamePanel" Background="AliceBlue">
                    <Interactivity:Interaction.Behaviors>
                        <Core:DataTriggerBehavior Binding="{Binding Lastname}" ComparisonCondition="Equal" Value="Mike">
                            <Media:ControlStoryboardAction Storyboard="{StaticResource std}" />
                        </Core:DataTriggerBehavior>
                    </Interactivity:Interaction.Behaviors>
                    <TextBlock x:Name="lastnameTxt" Text="{Binding Lastname}"  TextAlignment="Center" VerticalAlignment="Center" Margin="0,5,0,0"></TextBlock>
                </StackPanel>
            </Grid>
        </DataTemplate>
    </controls:DataGridTemplatedColumn.CellTemplate>
</controls:DataGridTemplatedColumn>

lastnameTxtText不等于"Mike“时,则播放Storyboard。这是渲染图像:

您需要注意的一点是,应该在lastnamePanel中设置初始Background,否则将不会播放故事板。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/38592634

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档