让进度条前进一步是通过Progress对象的PerfStep方法来实现的。
本例下载
本文介绍如何在CodeSmith模板生成过程中使用Progress对象来显示进度条,提升用户体验。通过设置最大值和步长,配合循环模拟耗时操作,使状态栏实时反馈生成进度。
使用Progress对象可以为CodeSmith生成代码的过程显示一个进度条,这对于生成比较费时的模板操作是非常有用的,如果你使用Visual Studio,可以在状态栏中显示一进度条:
使用进度条的方法是通过CodeTemplate对象的Progress属性对象,首先是设置Progress对象的最大值和步长,本例通过一个简单的循环来模拟一个费时的操作:
<%@ Template Language="C#" TargetLanguage="Text" Debug="False" %>
<%@ Import Namespace="System.Threading" %>
This is a progress demo.
<% SimulateProgress(); %>
<script runat="template">
public void SimulateProgress(){
Progress.MaximumValue = 25;
Progress.Step = 1;
for(int i=0;i<25;i++){
Progress.PerformStep();
Thread.Sleep(100);
Response.WriteLine("step {0} ",i);
}
}
</script>
让进度条前进一步是通过Progress对象的PerfStep方法来实现的。
本例下载
4515

被折叠的 条评论
为什么被折叠?