0
A
回答
-1
0
要運行此示例,您需要一個蛇形圖像,您可以從http://res.freestockphotos.biz/pictures/16/16242-illustration-of-a-green-snake-pv.png獲得。我直接使用這個URL,但你應該先下載圖像然後使用它。
- 您需要ProgressBar的控件模板,因爲您也想顯示百分比狀態。
- 否則正常ProgressBar會做。
代碼可以作爲是:
<Window x:Class="WpfControlTemplates._32794074.Win32794074"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="Win32794074" Height="600" Width="1000">
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="397*"/>
<RowDefinition Height="173*"/>
</Grid.RowDefinitions>
<ProgressBar x:Name="PBarCustom" Width="958" Height="200" Maximum="958" Value="958" Foreground="#FFE6E61F" Margin="17,185,17,11.932" ValueChanged="PBarCustom_ValueChanged">
<ProgressBar.Background>
<ImageBrush ImageSource="http://res.freestockphotos.biz/pictures/16/16242-illustration-of-a-green-snake-pv.png"/>
</ProgressBar.Background>
<ProgressBar.Template>
<ControlTemplate>
<Grid Background="{TemplateBinding Background}">
<Rectangle x:Name="Thumb" HorizontalAlignment="Left" Fill="#FFC5EA1F" Stroke="#FF0DB442" Width="{TemplateBinding Width}" />
<Ellipse Fill="#FF7DEEDE" Height="124" Stroke="#FF0DB442" Width="150" VerticalAlignment="Center" HorizontalAlignment="Center" Opacity="0.3"/>
<Label x:Name="tbStatus" VerticalContentAlignment="Center" HorizontalContentAlignment="Center" FontWeight="Bold" FontSize="75" Foreground="#FF21BD76" Content="0" />
</Grid>
</ControlTemplate>
</ProgressBar.Template>
</ProgressBar>
<Button x:Name="BtnLoadSnake" Content="Load Snake" HorizontalAlignment="Left" Margin="462,14.068,0,0" VerticalAlignment="Top" Width="75" Click="BtnLoadSnake_Click" Grid.Row="1"/>
</Grid>
</Window>
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Shapes;
using System.Windows.Threading;
namespace WpfControlTemplates._32794074
{
/// <summary>
/// Interaction logic for Win32794074.xaml
/// </summary>
public partial class Win32794074 : Window
{
public Win32794074()
{
InitializeComponent();
}
DispatcherTimer timer;
private void BtnLoadSnake_Click(object sender, RoutedEventArgs e)
{
BtnLoadSnake.IsEnabled = false;
PBarCustom.Value = PBarCustom.Maximum;
Rectangle thumb = (Rectangle)PBarCustom.Template.FindName("Thumb", PBarCustom);
thumb.Width = PBarCustom.Value;
Label status = (Label)PBarCustom.Template.FindName("tbStatus", PBarCustom);
status.Content = ((int)(100 - ((100 * PBarCustom.Value)/PBarCustom.Maximum))).ToString();
Dispatcher disp = PBarCustom.Dispatcher;
EventHandler pBarCallbackHandler = new EventHandler(pBarCallback);
timer = new DispatcherTimer(TimeSpan.FromSeconds(0.5), DispatcherPriority.Normal, pBarCallback, disp);
}
private void pBarCallback(object sender, EventArgs e)
{
PBarCustom.Value -= 13;
Rectangle thumb = (Rectangle)PBarCustom.Template.FindName("Thumb", PBarCustom);
thumb.Width = PBarCustom.Value;
Label status = (Label)PBarCustom.Template.FindName("tbStatus", PBarCustom);
status.Content = ((int)(100 - ((100 * PBarCustom.Value)/PBarCustom.Maximum))).ToString();
if (PBarCustom.Value == 0)
timer.Stop();
}
private void PBarCustom_ValueChanged(object sender, RoutedPropertyChangedEventArgs<double> e)
{
if(e.NewValue == 0)
BtnLoadSnake.IsEnabled = true;
}
}
}
相關問題
- 1. 進度條下載圖像
- 2. 使用進度條加載Android圖像
- 3. 加載圖像的進度條
- 4. AQuery在進度條上以進度百分比加載圖像
- 5. 添加進度條C#WPF
- 6. 當進度條加載時加載圖像
- 7. 將圖像添加到進度條
- 8. 無法在加載畢加索圖像後隱藏進度條?
- 9. 進度條或Div圖像
- 10. JQuery數據加載進度圖像
- 11. JavaScript加載圖像的進度
- 12. 計算圖像加載進度不woking
- 13. Emgu.Cv WPF(C#)如何從圖像框(image.source)加載圖像
- 14. 加載圖標/進度條
- 15. 如何用進度條替換Kendo UI網格加載圖像
- 16. 預加載圖像的進度條Onload問題
- 17. 使用bootstrap加載圖像的進度條/ jquery
- 18. 網站加載程序進度條圖像使用Javascript和Jquery
- 19. 如何在iOS SDK中顯示圖像的加載進度條
- 20. 如何隱藏所有圖像加載後的進度條
- 21. 如何在picasso中加載圖像時使用進度條?
- 22. 在RecyclerView中加載圖像的進度條
- 23. 多個圖像進度條加載喜歡在Whats App中
- 24. 隱藏進度條,一旦圖像加載
- 25. 如何在WebView上顯示加載圖像或進度條
- 26. wpf加載頁面的進度條
- 27. Android加載進度條帶自定義圖像和進度指示器
- 28. 進度條9patch圖像水平刻度
- 29. 在C#中使用進度欄從文件夾加載圖像?
- 30. mouseover.js加載灰度圖像
我是在它的工作。 – AnjumSKhan
好吧,顏色都是個人品味的問題,我相信有人會喜歡你的groovy _green-shaded-picture-progress bar_。 – MickyD
@GaboO我假設你想使用你正在加載的圖像與在進度條背景中使用的相同。 – AnjumSKhan