public void EditSingle(MyMeta.Single obj, string niceName) { this.single = obj; DataSet ds = new DataSet(); DataTable dt = new DataTable("this"); dt.Columns.Add("this", Type.GetType("System.Object")); ds.Tables.Add(dt); dt.Rows.Add(new object[] { this }); dt = new DataTable("MyData"); DataColumn k = dt.Columns.Add("Key", stringType); k.AllowDBNull = false; DataColumn v = dt.Columns.Add("Value", stringType); v.AllowDBNull = false; ds.Tables.Add(dt); UniqueConstraint pk = new UniqueConstraint(k, false); dt.Constraints.Add(pk); ds.EnforceConstraints = true; this.txtNiceName.Enabled = true; this.col_0.HeaderText = "Key"; this.col_0.TextBox.Enabled = true; this.col_1.HeaderText = "Value"; this.col_1.MappingName = "Value"; this.txtNiceName.Text = niceName; this.txtNiceName.Tag = obj; IPropertyCollection properties = obj.Properties; DataRowCollection rows = dt.Rows; foreach (IProperty prop in properties) { rows.Add(new object[] { prop.Key, prop.Value }); } dt.AcceptChanges(); this.Grid.DataSource = dt.DefaultView; this.InitializeGrid(); this.col_0.TextBox.BorderStyle = BorderStyle.None; this.col_1.TextBox.BorderStyle = BorderStyle.None; this.col_0.TextBox.Move += new System.EventHandler(this.ColorTextBox); this.col_1.TextBox.Move += new System.EventHandler(this.ColorTextBox); dt.RowChanged += new DataRowChangeEventHandler(PropertyGridRowChanged); dt.RowDeleting += new DataRowChangeEventHandler(PropertyGridRowDeleting); dt.RowDeleted += new DataRowChangeEventHandler(PropertyGridRowDeleted); }
public Template(Language language, string baseNamespace, MyMeta.Single tableOrView) : this(language, baseNamespace) { this.table = tableOrView as ITable; if (this.table == null) { this.view = tableOrView as IView; } }
private void CollectionGridRowChangedEvent(object sender, DataRowChangeEventArgs e) { MyMeta.Single obj = e.Row["obj"] as MyMeta.Single; obj.Alias = e.Row["Alias"] as string; e.Row.Table.RowChanged -= new DataRowChangeEventHandler(CollectionGridRowChanged); e.Row["Alias"] = obj.Alias; e.Row.Table.RowChanged += new DataRowChangeEventHandler(CollectionGridRowChanged); MarkAsDirty(true); }
private void LoadStep4() { //Can start generating files. this.Enabled = true; progressBar.Value = 0; txtProgress.Text = "Generating classes..."; Application.DoEvents(); TreeNode[] nodes = GetCheckedNodes(); progressBar.Maximum = nodes.Length - 1; Language language = (Language)cmbLanguage.SelectedIndex; switch (language) { case Language.CSharp: myMeta.Language = "C#"; break; case Language.VBNet: myMeta.Language = "VB.NET"; break; default: break; } for (int i = 0; i < nodes.Length; i++) { MyMeta.Single item = GetItem(nodes[i]); txtProgress.Text += "\r\nGenerating " + item.Name + "... "; int index = txtProgress.Lines.Length - 1; txtProgress.SelectionStart = txtProgress.Text.LastIndexOf("\r\n"); txtProgress.ScrollToCaret(); progressBar.Value = i; Application.DoEvents(); string result = null; try { Template t = new Template(language, txtNamespace.Text, item); t.Generate(txtTargetFolder.Text); result = "Done."; } catch (Exception ex) { result = ex.Message; } txtProgress.Text += result; } txtProgress.Text += "\r\nProcess complete. You can close this wizard."; ProcessStartInfo pInfo = new ProcessStartInfo(); pInfo.UseShellExecute = true; pInfo.FileName = txtTargetFolder.Text; Process.Start(pInfo); Application.DoEvents(); btnBack.Enabled = false; }