WPF加载图片闪烁的问题
想做一个循环播放图片的效果,开始只用一个image控件,通过image.source赋值填充不同图片的方式,然后依次循环播放不同图片,可能第一遍不会闪烁,但之后都会闪烁;...
想做一个循环播放图片的效果,开始只用一个image控件,通过image.source赋值填充不同图片的方式,然后依次循环播放不同图片,可能第一遍不会闪烁,但之后都会闪烁;后来一个图片用一个image控件,事先在属性栏里设置source图片,通过修改可见性实现循环播放,但同样会闪烁(显示图片加了一点效果,个人觉得应该不会影响),想知道怎样装载图片不会出现闪烁呢?
展开
1个回答
展开全部
图片闪烁是由于默认样式导致的,你需要重写其template。
网上一大堆的例子.前两天遇到了同样的问题,我遇到的是个button的背景图,放上去之后一直闪烁
<ControlTemplate TargetType="{x:Type Button}">
<Border Background="{TemplateBinding Background}" BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="{TemplateBinding BorderThickness}">
<ContentPresenter HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}"
Margin="{TemplateBinding Padding}" VerticalAlignment="{TemplateBinding VerticalContentAlignment}"
SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}" RecognizesAccessKey="True"/>
</Border>
<ControlTemplate.Triggers>
<Trigger Property="IsMouseOver" Value="True">
<Setter Property="Cursor" Value="Hand" />
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
网上一大堆的例子.前两天遇到了同样的问题,我遇到的是个button的背景图,放上去之后一直闪烁
<ControlTemplate TargetType="{x:Type Button}">
<Border Background="{TemplateBinding Background}" BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="{TemplateBinding BorderThickness}">
<ContentPresenter HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}"
Margin="{TemplateBinding Padding}" VerticalAlignment="{TemplateBinding VerticalContentAlignment}"
SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}" RecognizesAccessKey="True"/>
</Border>
<ControlTemplate.Triggers>
<Trigger Property="IsMouseOver" Value="True">
<Setter Property="Cursor" Value="Hand" />
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询