Exemple #1
0
 public DataWraper(Type tableName, BindingSource componentId, ErrorProvider errorProvider)
 {
     errorProvider1 = errorProvider;
     
     bindingSourceMain = componentId;
     bindingSourceMain.PositionChanged += bindingSourceMain_PositionChanged;
     InitializeComponent();
     WrapperBindingSource.PositionChanged += WrapperBindingSource_PositionChanged;
     WrapperBindingSource.DataSource = tableName.GetType();
     //Type yy = tableName.GetType();
     Text = tableName.Name + "s";
     dataTableAdaptor = new MySqlTableAdaptor(tableName);
     dataTable = dataTableAdaptor.GetTable();
     WrapperBindingSource.DataSource = dataTable;
     errorProvider1.DataSource = WrapperBindingSource;
     if (componentId.Current != null)
     {
         WrapperBindingSource.Position = (int)componentId.Current;
     }
     WrapperID.DataBindings.Add("Text", WrapperBindingSource, "ID");
     WrapperComboBox.DataSource = dataTable;
     WrapperComboBox.AutoCompleteMode = AutoCompleteMode.SuggestAppend;
     WrapperComboBox.AutoCompleteSource = AutoCompleteSource.ListItems;
     WrapperComboBox.DisplayMember = dataTable.Columns[1].ColumnName;
     WrapperComboBox.ValueMember = dataTable.Columns[0].ColumnName;
     //WrapperComboBox.DataSource = WrapperBindingSource;
     WrapperComboBox.SelectedValueChanged += WrapperComboBox_SelectedValueChanged;
     WrapperComponentSelection.Click+=WrapperComponentSelection_Click;
     WrapperComboBox.Validated += WrapperComboBox_Validated;
     WrapperLabel.Text = tableName.Name;
     WrapperID.TextChanged += WrapperID_TextChanged;
     //WrapperComboBox.DataBin
     type = tableName;
 }
        protected override object GetValue(int rowIndex)
        {
            if (string.IsNullOrEmpty(stringValue))
            {
                if (OwningRow.Index < 0)
                {
                    return string.Empty;
                }

                tableAdaptor = (MySqlTableAdaptor)OwningColumn.Tag;

                var poinedRows = new List<DataRow>();
                if (((DataRowView)OwningRow.DataBoundItem).Row[ColumnIndex + 1] != DBNull.Value)
                {
                    poinedRows = tableAdaptor.GetObjectByIDs(new List<decimal> { (decimal)((DataRowView)OwningRow.DataBoundItem).Row[ColumnIndex + 1] });
                }

                // Advanced
                string result = poinedRows.Aggregate(string.Empty, (current, dr) => current + (", " + dr["NAME"]));

                if (result.Length > 2)
                {
                    stringValue = result.Substring(2);
                }
            }
            return stringValue;
        }
Exemple #3
0
        /*
        public void XmlWriter(object source)
        {
            var x = new System.Xml.Serialization.XmlSerializer(source.GetType());
            x.Serialize(new XmlTextWriter("mainXML", Encoding.UTF8),  source);
        }

        public void XmlReader(object source)
        {
            var x = new System.Xml.Serialization.XmlSerializer(source.GetType());
            x.Serialize(new XmlTextWriter("mainXML", Encoding.UTF8), source);
        }
        */

        internal string XmlSyncronixe(ITableAdaptor dataTableAdaptor)
        {
            string xml = "<?xml version=\"1.0\" encoding=\"ISO-8859-1\"?>\n";
            xml += "<Data>\n";
            xml += ToXML(dataTableAdaptor, -1, "\t");
            xml += "</Data>";
            const string xmlPath = "..\\";
            var file = new System.IO.StreamWriter(xmlPath + "XML.XML") {AutoFlush = true};
            file.WriteLine(xml);
            file.Close();
            return xml;
        }
Exemple #4
0
        private string ToXML(ITableAdaptor dataTableAdaptor, int id,string tab)
        {
            var sb = new StringBuilder();
            DataTable dataTable =  dataTableAdaptor.GetTable();
            for (int i = 0; i < dataTable.Rows.Count; i++)
            {
                if (id > -1)
                {
                    int currentId;
                    int.TryParse(dataTable.Rows[i].ItemArray[0].ToString(), out currentId);
                    if (currentId != id)
                    {
                        continue;
                    }
                }
                for (int j = 0; j < dataTable.Columns.Count; j++)
                {
                    if (j>0 && dataTable.Columns[j].DataType == typeof (decimal))
                    {
                        sb.Append(tab+"<" + dataTable.Columns[j].ColumnName + ">\n");
                
                        object objo =
                            dataTableAdaptor.GetItem().UnderlyingSystemType.GetProperty(
                                dataTable.Columns[j].ColumnName);
                        if (objo != null)
                        {
                            ITableAdaptor dataTableAdaptorChild =
                                new MySqlTableAdaptor(((PropertyInfo) objo).PropertyType);
                            int idToFind;
                            int.TryParse(dataTable.Rows[i].ItemArray[j].ToString(), out idToFind);
                            string childXml = ToXML(dataTableAdaptorChild, idToFind,tab+"\t");
                            sb.Append(childXml);

                        }
                        sb.Append(tab+"</" + dataTable.Columns[j].ColumnName + ">\n");
                    }
                    else
                    {
                        sb.Append(tab+"<" + dataTable.Columns[j].ColumnName + ">" + dataTable.Rows[i].ItemArray[j] + "</" + dataTable.Columns[j].ColumnName + ">\n");
                
                    }
                }
            }

            string result = sb.ToString();
            return result;
        }
Exemple #5
0
        public Form1(Type tableType)
        {
            InitializeComponent();
            this.bindingSource1.DataSource = tableType.GetType();
            bindingSource1.DataSourceChanged += bindingSource1_DataSourceChanged;
            System.Type yy = tableType.GetType();
            this.Text = tableType.Name+"s";
            dataTableAdaptor = new MySqlTableAdaptor(tableType);
            dataTable = dataTableAdaptor.GetTable();
            
            dataGridView1.Columns.Clear();
            int position = 3;

            this.tabPage2.SuspendLayout();
            this.tabPage3.SuspendLayout();
            
            for (int i = 1; i < dataTable.Columns.Count; i++)
            {
                DataGridViewColumn dataGridViewColumn = new DataGridViewColumn();
                DataGridViewCell dataGridViewCell = null;
                if (dataTable.Columns[i].DataType == typeof(decimal))
                {
                    dataGridViewCell = new FormatedBindCell();
                    //((FormatedBindCell)dataGridViewCell).InitializecatTableAdaptor(dataTableAdaptor);
                }
                else
                {
                    dataGridViewCell = new DataGridViewTextBoxCell();
                }
                dataGridViewColumn.DataPropertyName = dataTable.Columns[i].ColumnName;
                dataGridViewColumn.HeaderText = dataTable.Columns[i].ColumnName;
                dataGridViewColumn.CellTemplate = dataGridViewCell;
                dataGridViewColumn.Name = dataTable.Columns[i].ColumnName;
                dataGridView1.Columns.Add(dataGridViewColumn);



                if (dataTable.Columns[i].DataType == typeof(decimal))
                {

                    DataWraper dataWrapper = null;
                    object objo = ((Type)dataTableAdaptor.GetItem()).UnderlyingSystemType.GetProperty(dataTable.Columns[i].ColumnName);
                    if (objo != null)
                    {
                        dataWrapper = new DataWraper(((PropertyInfo)objo).PropertyType, bindingSource1, errorProvider1);//.MemberType.GetType();
                        dataGridViewColumn.Tag = new MySqlTableAdaptor(((PropertyInfo)objo).PropertyType);
                    
                    dataWrapper.Location = new System.Drawing.Point(6, position);
                    tabPage2.Controls.Add(dataWrapper);
                    }
                }
                else
                {
                    Button button1 = new Button();
                    Button button2 = new Button();
                    TextBox textBox1 = new TextBox();
                    Label label1 = new Label();

                    label1.AutoSize = true;
                    label1.Location = new System.Drawing.Point(6, position + 6);
                    label1.Name = dataTable.Columns[i].ColumnName + "Label";
                    label1.Size = new System.Drawing.Size(46, 13);
                    label1.TabIndex = 0;
                    label1.Text = dataTable.Columns[i].ColumnName; ;
                    // 
                    // textBox1
                    // 
                    textBox1.Location = new System.Drawing.Point(80, position + 3);
                    textBox1.Name = dataTable.Columns[i].ColumnName + "TextBox";
                    textBox1.Size = new System.Drawing.Size(111, 20);
                    textBox1.TabIndex = 1;
                    textBox1.DataBindings.Add(new System.Windows.Forms.Binding("Text", bindingSource1, dataTable.Columns[i].ColumnName));
                    this.tabPage2.Controls.Add(textBox1);
                    this.tabPage2.Controls.Add(label1);
                }

                SimulationBand dataSimulator = null;
                dataSimulator = new SimulationBand();

                dataSimulator.Location = new System.Drawing.Point(6, position * 5);
                dataSimulator.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
                        | System.Windows.Forms.AnchorStyles.Left)
                        | System.Windows.Forms.AnchorStyles.Right)));
            
                tabPage3.Controls.Add(dataSimulator);

                position += 28;
            }


            this.tabPage2.ResumeLayout(false);
            this.tabPage2.PerformLayout();

            this.tabPage3.ResumeLayout(false);
            this.tabPage3.PerformLayout();

            bindingSource1.DataSource = dataTable;
            dataGridView1.AutoGenerateColumns = false;
            dataGridView1.SelectionMode = DataGridViewSelectionMode.FullRowSelect;
            dataGridView1.AllowUserToAddRows = false;
            dataGridView1.ReadOnly = true;
            dataGridView1.DataSource = bindingSource1;

            
            this.tabControl1.DrawMode =
                    TabDrawMode.OwnerDrawFixed;
            this.tabControl1.DrawItem +=
                new DrawItemEventHandler(PageTab_DrawItem);
            this.tabControl1.Selecting +=
                new TabControlCancelEventHandler(PageTab_Selecting);
            dataGridView1.SelectionMode = DataGridViewSelectionMode.FullRowSelect;

            dataGridView1.DoubleClick += new System.EventHandler(dataGridView1_DoubleClick);
            dataGridView1.SelectionChanged += new EventHandler(dataGridView1_SelectionChanged);
            dataTable.ColumnChanged += new DataColumnChangeEventHandler(HELP_ColumnChanged);
            //dataGridView1.Columns[1]..Format += new ConvertEventHandler(Form1_Format);
        }