1
我是telerik控件的新手,我正在用GridView做一個應用程序,我想使某些行閃爍或閃爍。telerik GridView中的閃爍行
我找到了一個樣式,它通過StyleSelector,但是當我試圖使用styleSelectors更改行背景顏色滾動不起作用的權利。
有誰知道有沒有簡單的方法? 希望有人能幫助我。 謝謝!
我是telerik控件的新手,我正在用GridView做一個應用程序,我想使某些行閃爍或閃爍。telerik GridView中的閃爍行
我找到了一個樣式,它通過StyleSelector,但是當我試圖使用styleSelectors更改行背景顏色滾動不起作用的權利。
有誰知道有沒有簡單的方法? 希望有人能幫助我。 謝謝!
所以解決這將是應用排風格,然後在Telerik的的TargetType的目標是:GridViewRow ..
<Behaviours:FlashingRowStyleSelector x:Key="resultsGridStyle">
<Behaviours:FlashingRowStyleSelector.SucceededStyle>
<Style TargetType="telerik:GridViewRow">
<Style.Triggers>
<Trigger Property="Visibility" Value="Visible">
<Trigger.EnterActions>
<BeginStoryboard>
<Storyboard >
<ColorAnimation Storyboard.TargetProperty="Background.Color"
Duration="0:0:0.2" From="White" To="Red" RepeatBehavior="Forever" AutoReverse="True"/>
</Storyboard>
</BeginStoryboard>
</Trigger.EnterActions>
</Trigger>
</Style.Triggers>
</Style>
</Behaviours:FlashingRowStyleSelector.SucceededStyle>
,然後在有這個屬性設置
RowStyleSelector =「{StaticResource resultsGridStyle}」
要控制這一點 - 您必須編寫一個繼承自StyleSelector的類,該類根據填充網格中任何行項的值決定選擇哪種樣式。因此,像這樣應該做的伎倆
public class FlashingRowStyleSelector : StyleSelector
{
#region Properties
/// <summary>
/// Gets or sets the succeeded style.
/// </summary>
public Style SucceededStyle { get; set; }
/// <summary>
/// Gets or sets the succeeded style.
/// </summary>
public Style NormalStyle{ get; set; }
#endregion
#region Public Methods
/// <summary>
/// The select style.
/// </summary>
/// <param name="item">
/// The item.
/// </param>
/// <param name="container">
/// The container.
/// </param>
/// <returns>
/// The <see cref="Style"/>.
/// </returns>
public override Style SelectStyle(object item, DependencyObject container)
{
var info = item as RowObject
if (info != null)
{
if (info.SomeProperty == "1")
{
return this.SucceededStyle;
}
}
return this.NormalStyle;
}
#endregion
}
基本上這一切正在做的是設置基礎上的1屬性被設置的風格。 因此,如果您的網格中的行之一滿足這個條件,那麼它將動畫所需的時間從白到紅。
查看repeatbehavior來控制動畫觸發的次數。 http://msdn.microsoft.com/en-us/library/system.windows.media.animation.timeline.repeatbehavior.aspx –
並取決於您使用哪個版本的telerik控件(以及您需要的網格性能),您可以關閉EnableRowVirtualisation,這會導致網格在每次滾動時不重新生成行容器,因此不會觸發PropertyChanged並因此不會再次觸發動畫。 –