私のアプリケーションには、Web 経由でストリーミングされる多くのメディア要素があります。そのために2〜3秒待つ必要がある場合があります。それは私にとって問題ではありません。問題は、ローディングのある種のアニメーションを作成する方法がわからないことです。ローディングバーのアニメーション GIF がありますが、表示方法がわかりません。何か案は ?
7475 次
2 に答える
9
gif は必要ありません。XAML コントロールProgressRingがあります。そのIsActiveプロパティを、読み込み中であることを示すプロパティにバインドします。
何かのようなもの:
public class DataService : BindableBase
{
private bool _isLoading;
public bool IsLoading
{
get
{
return _isLoading;
}
set
{
SetProperty(ref _isLoading, "IsLoading");
}
}
public void MyMethodWhichTakesLongTime()
{
IsLoading = true;
// Do some time consumption
IsLoading = false;
}
}
XAML の場合は次のようになります。
<ProgressRing IsActive="{Binding IsLoading}"
DataContext="{Binding MyDataService}"
Width="50"
Height="50" />
バインディング (および標準の MS テンプレートに由来する BindableBase (それ以外の場合は実装する必要がありますINotifyPropertyChanged
)) のおかげで、データサービスが何かを実行しているときに、ProgressRing が自動的にアクティブになります。
于 2012-10-06T13:03:09.113 に答える
2
ProgressBar も利用できます。これは、Windows Phone 7 に似た水平ローディング バーです。
不確定な進行状況バーの場合、次を使用できます
<ProgressBar Visibility="Visible" IsIndeterminate="True" />
于 2012-10-06T13:46:04.947 に答える