ProgressBar 自我学习笔记(二)

本文介绍了一种使用自定义控件实现加载进度条的方法,并提供了一种实现蒙层效果的方案,通过XAML代码展示了如何创建ProgressOverlay控件,并在后台控制其显示与隐藏。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.自定义弹出加载效果:

调用PopupContainer弹窗口,加载内容是自定义控件LoadingControl

LoadingControl load = new LoadingControl(); 
PopupCotainer input = new PopupCotainer(this);
input.Show(load);

这样,当网络请求时加载进度条显示,网络加载完成时,调用

   this.load.CloseMeAsPopup();

关闭加载自定义页面;

2.上面的方法完全可行,而且自定义幅度很大,很方便,唯一不足就是,会覆盖下面页面,只能显示当前加载进度条页面,我尝试设置Opacity来设置透明度,发现无用,如果想要蒙层的效果,代码如下:

XAML代码:
xmlns:Fun="clr-namespace:Coding4Fun.Phone.Controls;assembly=Coding4Fun.Phone.Controls"
xmlns:tookit="clr-namespace:Microsoft.Phone.Controls;assembly=Microsoft.Phone.Controls.Toolkit"
xmlns:Converters="clr-namespace:Coding4Fun.Phone.Controls.Converters;assembly=Coding4Fun.Phone.Controls"

控件代码:
<Fun:ProgressOverlay Name="progressOverlay"
                                 Visibility="{Binding OverlayVis}">
                <Fun:ProgressOverlay.Resources>
                    <Converters:VisibilityToBooleanConverter x:Key="VisToBoolConverter" />
                </Fun:ProgressOverlay.Resources>
                <StackPanel>
                    <TextBlock HorizontalAlignment="Center">Loading</TextBlock>
                    <tookit:PerformanceProgressBar IsIndeterminate="{Binding ElementName=progressOverlay, Path=Visibility, Converter={StaticResource VisToBoolConverter}}" />
                </StackPanel>
            </Fun:ProgressOverlay>

当然上面这段代码非本人原创。这样在后台控制显示和隐藏就可以达到蒙层效果,自我感觉不错哦!

转载于:https://www.cnblogs.com/Yukang1989/archive/2013/01/05/2845491.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值