如下所示,我有一个Canvas,可以让你在一个Thumb控件上拖动。将ProgressBars IsIndeterminate值设置为false时,拇指在拖动时会非常敏感,但只要将其设置为true,即使对于这样一个简单的情况,拇指也会滞后很多帧。当你添加更多控件时,它会变得非常明显。
设置Timeline.DesiredFrameRateProperty似乎没有任何区别。
我能做些什么来阻止这个问题吗?
<Window x:Class="WpfApplication30.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
<Canvas>
<Thumb Width="50"
Height="50"
Canvas.Left="10"
Canvas.Top="10"
DragDelta="Thumb_DragDelta"/>
<ProgressBar Width="200"
Height="20"
IsIndeterminate="True" />
</Canvas>
public partial class MainWindow : Window
{
public MainWindow()
{
InitializeComponent();
Timeline.DesiredFrameRateProperty.OverrideMetadata(typeof(Timeline), new FrameworkPropertyMetadata { DefaultValue = 1 });
}
private void Thumb_DragDelta(object sender, System.Windows.Controls.Primitives.DragDeltaEventArgs e)
{
UIElement obj = sender as UIElement;
Canvas.SetLeft(obj, Canvas.GetLeft(obj) + e.HorizontalChange);
Canvas.SetTop(obj, Canvas.GetTop(obj) + e.VerticalChange);
}
}
答案 0 :(得分:0)
我观察到,生气勃勃的进度条会破坏终端服务器的性能。
这只是你的机器吗?您是否正在远程观察并观察此行为?