예제 #1
0
        public void Commit(SurfaceTarget surface, VisioAutomation.ShapeSheet.CellValueType type)
        {
            if ((this._records == null || this._records.Count < 1))
            {
                return;
            }

            var stream = this._records.BuildStreamArray(StreamType.SidSrc);
            var items  = this._records.BuildValuesArray();

            if (stream.Array.Length == 0)
            {
                throw new VisioAutomation.Exceptions.InternalAssertionException();
            }

            if (type == CellValueType.Formula)
            {
                var flags = this._compute_setformula_flags();
                int c     = surface.SetFormulas(stream, items, (short)flags);
            }
            else
            {
                const object[] unitcodes = null;
                var            flags     = this._compute_setresults_flags();
                surface.SetResults(stream, unitcodes, items, (short)flags);
            }
        }
예제 #2
0
        public void Commit(IVisio.Page page, VisioAutomation.ShapeSheet.CellValueType type)
        {
            var surface = new SurfaceTarget(page);

            this.Commit(surface, type);
        }