Author: jordi
Date: 2005-06-21 04:59:00 -0400 (Tue, 21 Jun 2005)
New Revision: 46285
Modified:
trunk/winforms/datagrid/swf-datagrid-styles.cs
Log:
Advanced styles sample
Modified: trunk/winforms/datagrid/swf-datagrid-styles.cs
===================================================================
--- trunk/winforms/datagrid/swf-datagrid-styles.cs 2005-06-21 07:23:14 UTC
(rev 46284)
+++ trunk/winforms/datagrid/swf-datagrid-styles.cs 2005-06-21 08:59:00 UTC
(rev 46285)
@@ -28,19 +28,69 @@
using System.Windows.Forms;
using System.Data;
using System.Drawing;
+using System.ComponentModel;
namespace DatagridSamples
{
+ class ourDataGrid : DataGrid
+ {
+ public ourDataGrid ()
+ {
+ RowHeaderClick += new System.EventHandler
(onrowheaderclick);
+ }
+
+ public CurrencyManager Manager {
+ get {
+ return ListManager;
+ }
+ }
+
+ public ScrollBar _HorizScrollBar {
+ get {
+ return HorizScrollBar;
+ }
+ }
+
+ public ScrollBar _VertScrollBar {
+ get {
+ return VertScrollBar;
+ }
+ }
+
+ public CurrencyManager CurrencyManager ()
+ {
+
+ return (CurrencyManager) BindingContext [DataSource,
DataMember];
+ }
+
+ private void onrowheaderclick (object sender, System.EventArgs
e)
+ {
+
+ }
+
+ }
+
class DataGridStyles : Form
{
- private DataGrid dataGrid;
+ private ourDataGrid dataGrid;
private DataSet dsSource = new DataSet ();
+ private DataGridTableStyle tablestyles = new DataGridTableStyle
();
+ private DataGridTableStyle tablestyles2 = new
DataGridTableStyle ();
+ private Label labelCurrentCell = new Label ();
+ private DataTable programs;
+ private DataTable applications;
+ private DataTable utilities;
+ Button buttonLoadStyles;
public DataGridStyles ()
{
InitializeComponent ();
}
+ public void eventhandler (object sender,
CollectionChangeEventArgs e)
+ {
+ Console.WriteLine ("TableStyles Collection Changed");
+ }
void InitializeComponent ()
{
@@ -49,23 +99,141 @@
//
// dataGrid
//
- dataGrid = new DataGrid();
+ dataGrid = new ourDataGrid ();
dataGrid.HeaderForeColor =
System.Drawing.SystemColors.ControlText;
dataGrid.Location = new System.Drawing.Point (10, 10);
dataGrid.Name = "dataGrid";
dataGrid.Size = new System.Drawing.Size (600, 600);
+ buttonLoadStyles = new Button ();
+ buttonLoadStyles.Location = new Point (650, 30);
+ buttonLoadStyles.Text = "Load table styles";
+ buttonLoadStyles.Size = new Size (150, 23);
+ buttonLoadStyles.Click += new System.EventHandler
(buttonLoadStylesClick);
+ Controls.Add (buttonLoadStyles);
+ Label labelLoadStyles = new Label ();
+ labelLoadStyles.Location = new Point (650, 60);
+ labelLoadStyles.Text = "Load table styles settings";
+ labelLoadStyles.AutoSize = true;
+ Controls.Add (labelLoadStyles);
+
+ Button buttonApplications = new Button ();
+ buttonApplications.Location = new Point (650, 90);
+ buttonApplications.Text = "Table: applications";
+ buttonApplications.Size = new Size (150, 23);
+ buttonApplications.Click += new System.EventHandler
(buttonApplicationsClick);
+ Controls.Add (buttonApplications);
+
+ Label labelApplications = new Label ();
+ labelApplications.Location = new Point (650, 120);
+ labelApplications.Text = "Does not use styles";
+ labelApplications.AutoSize = true;
+ Controls.Add (labelApplications);
+
+ Button buttonPrograms = new Button ();
+ buttonPrograms.Location = new Point (650, 150);
+ buttonPrograms.Text = "Table: programs";
+ buttonPrograms.Size = new Size (150, 23);
+ buttonPrograms.Click += new System.EventHandler
(buttonProgramsClick);
+ Controls.Add (buttonPrograms);
+
+ Label labelPrograms = new Label ();
+ labelPrograms.Location = new Point (650, 180);
+ labelPrograms.Text = "Data column's with to 200,
header's text for column nom changes...";
+ labelPrograms.Size = new Size (200, 30);
+ Controls.Add (labelPrograms);
+
+ Button buttonUtilities = new Button ();
+ buttonUtilities.Location = new Point (650, 220);
+ buttonUtilities.Text = "Table: utilities";
+ buttonUtilities.Size = new Size (100, 23);
+ buttonUtilities.Click += new System.EventHandler
(buttonUtilitiesClick);
+ Controls.Add (buttonUtilities);
+
+ Label labelUtilities = new Label ();
+ labelUtilities.Location = new Point (650, 250);
+ labelUtilities.Text = "Use table styles to show a
column only and setting its width";
+ labelUtilities.Size = new Size (200, 30);
+ Controls.Add (labelUtilities);
+
+
//
// MainForm
//
Text = "SWF-Datagrid Styles";
- ClientSize = new System.Drawing.Size (700, 600);
+ ClientSize = new System.Drawing.Size (850, 650);
Controls.Add(dataGrid);
Load += new System.EventHandler(MainFormLoad);
ResumeLayout (false);
}
+ private void buttonLoadStylesClick (object sender,
System.EventArgs e)
+ {
+ tablestyles.MappingName = "Programes";
+ dataGrid.TableStyles.Add (tablestyles);
+ tablestyles.SelectionBackColor = Color.Black;
+ tablestyles.SelectionForeColor = Color.White;
+ tablestyles.ReadOnly = false;
+ // Column styles
+ tablestyles.AllowSorting = false;
+
+ dataGrid.CaptionText = "This is sample Caption";
+
+ tablestyles.GridColumnStyles["ID"].ReadOnly = true;
+ tablestyles.GridColumnStyles["Data"].Width = 200;
+ tablestyles.GridColumnStyles["Versio"].Alignment =
HorizontalAlignment.Right;
+ tablestyles.GridColumnStyles["nom"].HeaderText =
"HeaderText: nom";
+
+ DataGridColumnStyle latCol = new
DataGridTextBoxColumn();
+ latCol.MappingName = "Nom";
+ latCol.Width = 200;
+ tablestyles2.GridColumnStyles.Add (latCol);
+
+ tablestyles2.MappingName = "utilities";
+ dataGrid.TableStyles.Add (tablestyles2);
+
+ Console.WriteLine ("Text Header for Data {0}",
+
((DataGridTextBoxColumn)tablestyles.GridColumnStyles["Data"]).Format);
+
+ Console.WriteLine ("Text Header for Vilaweb {0}",
+
((DataGridTextBoxColumn)tablestyles.GridColumnStyles["Vilaweb"]).Format);
+
+ Console.WriteLine ("DataMember HorizScrollBar
Visible {0}, Max {1}, Min {2}, Large {3}, Small {4}, Value {5}",
+ dataGrid._HorizScrollBar.Visible,
+ dataGrid._HorizScrollBar.Maximum,
+ dataGrid._HorizScrollBar.Minimum,
+ dataGrid._HorizScrollBar.LargeChange,
+ dataGrid._HorizScrollBar.SmallChange,
+ dataGrid._HorizScrollBar.Value);
+
+ Console.WriteLine ("DataMember VertScrollBar Visible
{0}, Max {1}, Min {2}, Large {3}, Small {4}, Value {5}",
+ dataGrid._VertScrollBar.Visible,
+ dataGrid._VertScrollBar.Maximum,
+ dataGrid._VertScrollBar.Minimum,
+ dataGrid._VertScrollBar.LargeChange,
+ dataGrid._VertScrollBar.SmallChange,
+ dataGrid._VertScrollBar.Value);
+
+ dataGrid.CurrentCell = new DataGridCell (10, 3);
+ buttonLoadStyles.Enabled = false;
+ }
+
+ private void buttonApplicationsClick (object sender,
System.EventArgs e)
+ {
+ dataGrid.DataMember = "applications";
+ }
+
+ private void buttonProgramsClick (object sender,
System.EventArgs e)
+ {
+ dataGrid.DataMember = "programes";
+ }
+
+ private void buttonUtilitiesClick (object sender,
System.EventArgs e)
+ {
+ dataGrid.DataMember = "Utilities";
+ }
+
/*
public static void Main(string[] args)
{
@@ -74,33 +242,18 @@
void MainFormLoad (object sender, System.EventArgs e)
{
+
FillDataSet ();
-
- // Tick used by many apps to get the table's styles
- DataGridTableStyle tablestyles = new DataGridTableStyle
();
- tablestyles.MappingName = "Programes";
- dataGrid.TableStyles.Add (tablestyles);
-
- Console.WriteLine ("Table Styles {0}",
tablestyles.GridColumnStyles.Count);
-
- tablestyles.SelectionBackColor = Color.Black;
- tablestyles.SelectionForeColor = Color.White;
-
- for (int i = 0; i < tablestyles.GridColumnStyles.Count;
i++)
- Console.WriteLine (" Styles {0}",
tablestyles.GridColumnStyles[i].MappingName);
-
- // Column styles
- tablestyles.GridColumnStyles["ID"].Width = 30;
- tablestyles.GridColumnStyles["ID"].ReadOnly = true;
- tablestyles.GridColumnStyles["vilaweb"].Width = 30;
- tablestyles.GridColumnStyles["versio"].Alignment =
HorizontalAlignment.Right;
- tablestyles.GridColumnStyles["versio"].HeaderText =
"HeaderText: version";
-
+ dataGrid.HeaderFont = new Font ("Arial", 16);
+ dataGrid.GridLineColor = Color.Yellow;
+ dataGrid.ReadOnly = false;
+ dataGrid.HeaderBackColor = Color.Pink;
+ return;
}
private void FillDataSet ()
{
- // Create a FileStream object with the file path and
name.
+ // Create a FileStream object with the file path and
name.
System.IO.FileStream myFileStream = new
System.IO.FileStream ("programes.xsd",System.IO.FileMode.Open);
System.Xml.XmlTextReader myXmlTextReader = new
System.Xml.XmlTextReader (myFileStream);
dsSource.ReadXmlSchema (myXmlTextReader);
@@ -113,7 +266,25 @@
dsSource.ReadXml (myXmlReader);
myXmlReader.Close ();
- dataGrid.DataSource = dsSource.Tables["programes"];
+
+ programs = dsSource.Tables["programes"].Copy ();
+
+ applications = dsSource.Tables["programes"].Copy ();
+ applications.TableName = "applications";
+ applications.Columns.RemoveAt (0);
+
+ utilities = dsSource.Tables["programes"].Copy ();
+ utilities.TableName = "utilities";
+ utilities.Columns.RemoveAt (2);
+ utilities.Columns.RemoveAt (3);
+ utilities.Columns.RemoveAt (4);
+
+ DataSet dataset = new DataSet ();
+ dataset.Tables.Add (applications);
+ dataset.Tables.Add (utilities);
+ dataset.Tables.Add (programs);
+ dataGrid.DataSource = dataset;
+ dataGrid.DataMember = "programes";
}
}
_______________________________________________
Mono-patches maillist - [email protected]
http://lists.ximian.com/mailman/listinfo/mono-patches