//gets the item clicked in the table object before displaying the toolStrip menu public void ctrl_MouseDown(object sender, MouseEventArgs e) { SelectedItemName = null; ColumnDataType = null; this.activeControl = sender as Control; MyCheckedListBox chbx = (MyCheckedListBox)activeControl; chlb = chbx;; object item = chbx.SelectedItem; var itemS = chbx.IndexFromPoint(e.Location); chbx.SelectedIndex = itemS; if (e.Button == MouseButtons.Right) { JoiningFlag = 1; if (chbx.SelectedIndex != -1) { SelectedItemName = chbx.SelectedItem.ToString(); } else { SelectedItemName = null; } if (SelectedItemName != null || SelectedItemName != "") { FullyQualTableFieldName = chbx.Name + '.' + SelectedItemName; table1ManJoinTableName = chbx.Name; table1ManJoinColumnName = SelectedItemName; table1ManJoinDataType = controller.GetColumnDataType(FullyQualTableFieldName); } } if (e.Button == MouseButtons.Left) { if (JoiningFlag == 1) { if (chbx.SelectedIndex != -1) { SelectedItemName = chbx.SelectedItem.ToString(); } else { SelectedItemName = null; } if (SelectedItemName != null || SelectedItemName != "") { FullyQualTableFieldName = chbx.Name + '.' + SelectedItemName; table2ManJoinTableName = chbx.Name; table2ManJoinColumnName = SelectedItemName; table2ManJoinDataType = controller.GetColumnDataType(FullyQualTableFieldName); } UpdateJoinsTableForManualJoin(table1ManJoinType, table1ManJoinTableName, table2ManJoinTableName, table1ManJoinColumnName, table2ManJoinColumnName, table1ManJoinDataType, table2ManJoinDataType); } JoiningFlag = 0; } }
public static MyCheckedListBox CreateTableObject(String tableName) { MyCheckedListBox checkedListBox = new MyCheckedListBox(); TableItemsTable.Clear(); String[] tableReference = tableName.Split('.'); String serverName = tableReference[0]; String actualTableName = tableReference[2]; TableItemsTable = Connection.PopulateTable(@"Use " + serverName + @" Select Table_Name, Column_Name, Data_Type From Information_Schema.Columns Where Table_Name =" + "'" + actualTableName + "'", @"Server=localhost;Trusted_Connection=True;"); foreach (DataRow dr in TableItemsTable.Rows) { checkedListBox.Items.Add(dr["Column_Name"].ToString()); } if (tableXLocation > 400) { tableXLocation = 10; Point lastTableLocation = tableObjects.Values.Last(); tableYLocation = lastTableLocation.Y + 135; } else { if (firstTableFlag) { tableXLocation = tableXLocation + 10; } else { tableXLocation = tableXLocation + 200; } } if (tableObjects.ContainsKey(actualTableName)) { tableNameAddition = tableNameAddition + 1; Point tempPoint = new Point(tableXLocation, tableYLocation); StoreTableOject(actualTableName + tableNameAddition.ToString(), tempPoint); } else { Point tempPoint = new Point(tableXLocation, tableYLocation); StoreTableOject(actualTableName, tempPoint); } if (KeysInitiatedFlag == 0) { DataColumn TableName = new DataColumn("TableName"); TableName.DataType = System.Type.GetType("System.String"); PrimaryKeys.Columns.Add(TableName); DataColumn ColumnName = new DataColumn("ColumnName"); ColumnName.DataType = System.Type.GetType("System.String"); PrimaryKeys.Columns.Add(ColumnName); DataColumn FKTableName = new DataColumn("TableName"); FKTableName.DataType = System.Type.GetType("System.String"); ForeignKeys.Columns.Add(FKTableName); DataColumn FKColumnName = new DataColumn("ColumnName"); FKColumnName.DataType = System.Type.GetType("System.String"); ForeignKeys.Columns.Add(FKColumnName); } KeysInitiatedFlag = 1; firstTableFlag = false; return checkedListBox; }
//protected void chbx_Click(object sender, MouseEventArgs e) //{ // chlb = (MyCheckedListBox)sender; //} protected void CheckedList_ItemCheck(object sender, ItemCheckEventArgs e) { chlb = sender as MyCheckedListBox; if (e.NewValue == CheckState.Checked) { String newItem = null; if (selectBuilder.Length == 0) { newItem = chlb.Name + "." + chlb.SelectedItem.ToString(); } else { newItem = ", " + chlb.Name + "." + chlb.SelectedItem.ToString(); } selectBuilder.Append(newItem); } if (e.NewValue == CheckState.Unchecked) { String valueToRemove = null; if (chlb.SelectedItem == null) { panel4.Controls.Remove(chlb); return; } int? lengthValue = (chlb.Name + "." + chlb.SelectedItem.ToString()).Length; if (lengthValue != null) { if (selectBuilder.Length == lengthValue) { valueToRemove = chlb.Name + "." + chlb.SelectedItem.ToString(); } else if (selectBuilder.ToString().Contains(", " + chlb.Name + "." + chlb.SelectedItem.ToString())) { valueToRemove = ", " + chlb.Name + "." + chlb.SelectedItem.ToString(); } else { valueToRemove = chlb.Name + "." + chlb.SelectedItem.ToString() + ", "; } String selectString = selectBuilder.ToString(); if (selectString.Contains(valueToRemove.Trim())) { selectString = selectString.Replace(valueToRemove, ""); selectBuilder = new StringBuilder(); selectBuilder.Append(selectString); } } } textBox1.Text = "Select " + selectBuilder.ToString() + Environment.NewLine + "From" + fromBuilder.ToString() + Environment.NewLine; PopulateDataGridView1(); selectForBuild.Clear(); selectForBuild.Append(textBox1.Text.Replace("\r", " ").Replace("\n", " ")); }