Esempio n. 1
0
        private static void DrawTree(TreeNode treeNode, string file)
        {
            using (Metafile mf = new Metafile(file, Graphics.FromHwnd(IntPtr.Zero).GetHdc(), EmfType.EmfOnly))
            {
                using (Graphics graphics = Graphics.FromImage(mf))
                {
                    graphics.PageUnit = GraphicsUnit.Point;

                    Font labelFont = new Font("SimSun", 9.0f, FontStyle.Regular, GraphicsUnit.Point);
                    DrawTreeContext context = new DrawTreeContext()
                    {
                        Graphics = graphics,
                        BorderPen = new Pen(Color.Black, 0.75f),
                        ConnectorPen = new Pen(Color.Black, 0.5f),
                        LabelBrush = Brushes.Black,
                        LabelFont = labelFont,
                        LabelHeight = labelFont.Size,
                        NodeHorizontalSep = 9.0,
                        NodeVerticalSep = 24.0,
                        NodeHorizontalPadding = 3.75,
                        NodeVerticalPadding = 3.75,
                        PreferCjk = true
                    };

                    treeNode.DrawTree(context, new PointD(treeNode.Layout(context).Pivot, 0.0));
                }
            }
        }
Esempio n. 2
0
        private static void Main()
        {
            TreeNode root = new TreeNode("供热站虚拟仿真系统")
            {
                Children =
                {
                    new TreeNode("框架模块")
                    {
                        Children =
                        {
                            new TreeNode("应用程序类"),
                            new TreeNode("主窗口")
                        }
                    },
                    new TreeNode("组件管理模块")
                    {
                        Children =
                        {
                            new TreeNode("组件数据结构"),
                            new TreeNode("用户交互模块")
                        }
                    },
                    new TreeNode("装配流程管理模块")
                    {
                        Children =
                        {
                            new TreeNode("装配流程定义"),
                            new TreeNode("装配流程的加载")
                        }
                    },
                    new TreeNode("装配控制模块")
                    {
                        Children =
                        {
                            new TreeNode("自动装配控制"),
                            new TreeNode("手动装配控制"),
                        }
                    }
                }
            };

            DrawTree(root, @"D:\1.wmf");
        }