예제 #1
0
        /// <summary>
        /// This is a javascript application.
        /// </summary>
        /// <param name="page">HTML document rendered by the web server which can now be enhanced.</param>
        public Application(IApp page)
        {
            Action getData = async delegate
            {
                var dt = await GetDataTable();
                var dg = new DataGridView ();
                dg.DataSourceChanged += delegate
                {
                    Console.WriteLine(new { DataSourceChangedEvent = "Inside Datagridsource changed" });
                    //foreach (var i in dg.Columns)
                    //{
                    //    Console.WriteLine(new { i });
                    //}
                    dg.Columns["Foo"].AutoSizeMode = DataGridViewAutoSizeColumnMode.None;

                        Console.WriteLine(dg.Columns["Foo"].Width.ToString());
                        dg.Columns["Foo"].Width = 0;

                   
                };
                dg.AttachControlToDocument();
                dg.DataSource = dt;
                dg.DataMember = "Sheet1";
                
                
            };
            getData();
        }
        public static async Task<DataGridView> AttachDataGridViewToDocument(this Task<DataTable> data)
        {
            // tested by
            // X:\jsc.svn\examples\javascript\appengine\DataGridWithHeaders\DataGridWithHeaders\Application.cs

            var x = await data;

            var grid = new DataGridView();


            grid.DataSource = x;

            grid.AttachControlToDocument();

            Native.document.title = x.TableName;

            return grid;
        }
예제 #3
0
        /// <summary>
        /// This is a javascript application.
        /// </summary>
        /// <param name="page">HTML document rendered by the web server which can now be enhanced.</param>
        public Application(IApp page)
        {
            //var z = ScriptCoreLib.Shared.Drawing.Color.FromKnownName(
            //        "rgba(" + 255 + ", " + 0 + ", " + 0 + ", " + (127 / 255.0) + ")"
            //    );

            //var x = Color.FromArgb(0x10, 255, 255, 0);

            //Console.WriteLine(
            //    new { z, x }
            //    );

            //Native.document.body.style.backgroundColor = x.ToString();


            var data = Book1.GetDataSet();

            // X:\jsc.svn\examples\javascript\WebGL\WebGLGoldDropletTransactions\WebGLGoldDropletTransactions\Application.cs
            var g = new DataGridView
            {
                BackgroundColor = Color.Transparent,


                // does this work?
                DefaultCellStyle = new DataGridViewCellStyle
                {

                    SelectionBackColor = Color.Black,
                    SelectionForeColor = Color.Yellow,


                    //BackColor = Color.Transparent
                    BackColor = Color.FromArgb(0x05, 0, 0, 0)
                },

                ColumnHeadersDefaultCellStyle = new DataGridViewCellStyle
                {
                    //BackColor = Color.Yellow,
                    BackColor = Color.FromArgb(0x7f, 255, 255, 255),
                    ForeColor = Color.Black
                },

                RowHeadersDefaultCellStyle = new DataGridViewCellStyle
                {
                    //BackColor = Color.Yellow,
                    BackColor = Color.FromArgb(0x7f, 255, 255, 255),
                    ForeColor = Color.Black
                },


                GridColor = Color.FromArgb(0x7f, 0, 0, 0),

                SelectionMode = DataGridViewSelectionMode.FullRowSelect,
                AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.Fill,

                // do we have a test for this?
                AllowUserToAddRows = false,

                //AllowUserToDeleteRows = false,

                //RowHeadersVisible = false,


                // cannot hide column headers yet
                // script: error JSC1000: No implementation found for this native method, please implement [System.Windows.Forms.DataGridView.set_ColumnHeadersVisible(System.Boolean)]
                //ColumnHeadersVisible = false,

                DataSource = data,
                DataMember = "Assets",
            };


            g.AttachControlToDocument();


            (g.Parent as Form).GetHTMLTarget().style.margin = "3em";

        }