0
我想从.NET 4.5的重新主办的工作流设计人员打印出漂亮的工作流程。打印WPF控件的标准技术不起作用 - 人们可以看到工作流设计器本身的环境,但工作流渲染保持空白。打印重新主办的设计人员的.NET WF4工作流程
我在下面的例子中从另一个工作流设计器中获取工作流定义,但我也需要能够从XAML字符串打印(所以它不会仅仅依靠显示的工作流设计器工作 - 我需要一个独立的一)。
我尝试下面的代码:
public void Print()
{
var printDlg = new PrintDialog();
if (printDlg.ShowDialog() != true) return;
_workflowDesigner.Flush();
var wd = new WorkflowDesigner();
DynamicActivity rootActivity;
using (var sr = new StringReader(_workflowDesigner.Text))
{
rootActivity = (DynamicActivity)ActivityXamlServices.Load(sr);
}
// wrap the activity in an ActivityBuilder because the designer expects it this way
var ab = new ActivityBuilder
{
Implementation = rootActivity.Implementation?.Invoke(),
Name = rootActivity.Name
};
wd.Load(ab);
var grid = new Grid();
grid.Children.Add(wd.View);
printDlg.PrintVisual(grid, "My Workflow");
}
谢谢;我希望有另一种方式,而不是依靠计时器,但似乎我必须沿着这条路线走下去。 –