WPF进度条中间写百分比数字

我发现很多同学把思维固化了,通常我们需要实现的进度条是
image

我在网上看到好多例子,但是都没有我的简单,他们不是重写ProcessBar就是使用模板,
可以将TextBlock提取出来啊,灵活一点单独绑定
然后一句代码Panel.ZIndex="1"就搞定了


 <StackPanel>
            <Button Content="执行耗时任务" Margin="20"
            Command="{Binding ProgressCommand}"/>
            <Grid >
                <TextBlock Panel.ZIndex="1" HorizontalAlignment="Center" VerticalAlignment="Center" Text="{Binding ElementName=progressBar1, Path=Value, StringFormat={}{0:0}%}" ></TextBlock>
                <ProgressBar Margin="50" x:Name="progressBar1" Width="300" Height="20" 
                     Value="{Binding ProgressValue}" Minimum="0" Maximum="100" />
            </Grid>
        </StackPanel>
		  private async void ExecuteProgress()
        {
            for (int i = 0; i <= 100; i++)
            {
                // 模拟耗时操作
                await Task.Delay(50); // 每50毫秒进度增加1
                ProgressValue = i;
            }
        }
        public ICommand ProgressCommand { get; set; }
posted @ 2024-07-03 13:50  孤沉  阅读(7)  评论(0编辑  收藏  举报