public bool ShowHotSearch(ref string ErrMsg, params string[] LangIDs) { try { ErrMsg=""; this.Text=m_Caption; strLangID = LangIDs; if (boolMultiLine == false) { dgSelectedRecords.Visible = false; panelMultiBtns.Visible = false; if (boolLevelSearch) panelLevel.Visible = true; //dgRecords.Width = dgRecords.Width + 100; //dgSearch.Width = dgSearch.Width + 100; //panelLevel.Left = dgSearch.Width - panelLevel.Width; this.panelStdBtns.Location = new System.Drawing.Point(93, 302); this.Size = new System.Drawing.Size(352, 359); this.grpData.Size = new Size(339, 298); lblcomments.Visible = false; //dgRecords.Width = dgSearch.Width; btnRemove.Enabled = btnRemoveAll.Enabled = false; } else { btnRemove.Enabled = btnRemoveAll.Enabled = false; //dgRecords.MaximumSize = new Size(314, 296); //dgSelectedRecords.MaximumSize = new Size(314, 296); //this.BackColor = Color.SeaGreen; } dgRecords.SetDefault=false; //** To Prevent Sorting Special Functionality In HotSearcg Grids**/ dgRecords.HandleGridSort = false; dgSelectedRecords.HandleGridSort = false; //** To Prevent Sorting Special Functionality In HotSearcg Grids**/ dgRecords.LangIDs = LangIDs; if(dgRecords.DesignGridFromSQL( m_Sql,ref strErrMsg )==false) { ErrMsg=strErrMsg; return false; } //if (boolLevelSearch == true) //{ // //this.KeyDown += new KeyEventHandler(BackSpaceKeyDown); // arlHierarchyLevel = new ArrayList(); // arlHierarchyValue = new ArrayList(); // arlPrimKey = new ArrayList(); //} if( dtBeforeHotSearch != null ) { DataTable dtRecords = (DataTable)(dgRecords.DataSource); clsSqlOperations objMinus = new clsSqlOperations(); System.Data.DataTable dtModified = objMinus.Minus( dtRecords, dtBeforeHotSearch, UK_HotSearch, UK_CurrentTable ); dgRecords.SetDataBinding(dtModified,""); objMinus = null; } //if(dgSearch.DesignGrid(dgRecords,ref strErrMsg)==false) //{ // ErrMsg=strErrMsg; // return false; //} dgRecords.MultiLine = boolMultiLine; dgSelectedRecords.MultiLine = boolMultiLine; dgSelectedRecords.SetDataBinding(((DataTable)dgRecords.DataSource).Clone(), ""); //Debanjan Routh //The following code is added because the header text of the selected //grid was not coming coorect.The language converted text was not coming //Here the header text of the Records grid is simply copied to the //header text of the Selected Grid. for (int i = 0; i < dgSelectedRecords.Columns.Count; i++) { dgSelectedRecords.Columns[i].HeaderText = dgRecords.Columns[i].HeaderText; } ///// //dgRecords.AssociatedSearchGrid = dgSearch; //dgSearch.Focus(); this.ShowDialog(); return true; } catch(Exception ex) { ErrMsg=ex.Source + " - " + ex.Message; return false; } }
private void btnAdd_Click_1(object sender, EventArgs e) { try { object[] obj; CurrencyManager cmanag = (CurrencyManager)dgRecords.BindingContext[dgRecords.DataSource]; if (cmanag.List.Count == 0) { return; } DataRowView view = (DataRowView)cmanag.Current; DataTable dtnew = view.DataView.ToTable(); DataTable dtMain = ((DataTable)dgRecords.DataSource).Clone(); dtMain.BeginLoadData(); dtMain.Merge(dtnew, true, MissingSchemaAction.Error); dtMain.EndLoadData(); dtSelected = ((DataTable)dgSelectedRecords.DataSource).Copy(); DataTable dtToBeRemoved = dtMain.Clone(); ArrayList list = new ArrayList(); for (int i = 0; i < dgRecords.SelectedRows.Count; i++) { if (boolRestrictTo999Rows == true && dtSelected.Rows.Count == 999) break; DataGridViewRow selectedrow = dgRecords.SelectedRows[i]; int index = selectedrow.Index; obj = new object[dtMain.Columns.Count]; for (int k = 0; k < dtMain.Columns.Count; k++) { obj[k] = dtMain.Rows[index][k].ToString(); } dtToBeRemoved.LoadDataRow(obj, true); dtSelected.LoadDataRow(obj, true); list.Add(dtMain.Rows[i]); dgRecords.Update(); obj = null; } clsSqlOperations objMinus = new clsSqlOperations(); DataTable dtOutPut = objMinus.Minus(dtMain, dtToBeRemoved); objMinus = null; if (boolRestrictTo999Rows == true) { if (dtSelected.Rows.Count == 999) DisableEnableBtn(true); else DisableEnableBtn(false); } dtnew.AcceptChanges(); dtMain.AcceptChanges(); dgRecords.DataSource = dtOutPut; //dgRecords.dtFullData = dtOutPut; dgSelectedRecords.DataSource = reverse_datatable(dtSelected); //dgSearch.dataUpgrade(dtSelected); //lblcomments.Text = dtSelected.Rows.Count + " out of " + dgSearch.FullData.Rows.Count + " rows selected"; dtMain.Dispose(); dtSelected.Dispose(); dtOutPut.Dispose(); dtnew.Dispose(); dtToBeRemoved.Dispose(); dgRecords.Refresh(); dgSelectedRecords.Refresh(); GenerateCurrentData(); this.btnRemove.Enabled = true; this.btnRemoveAll.Enabled = true; if (dgRecords.Rows.Count == 0) { btnAdd.Enabled = false; btnAddAll.Enabled = false; } } catch (Exception ex) { //MessageBox.Show(ex.Message, "COMPONENT ERROR", MessageBoxButtons.OKCancel, MessageBoxIcon.Error); } }
private void GenerateCurrentData() { //clsSqlOperations _oper; //DataTable dtTemp ; ////DataTable dtTemp = ((DataTable)dgRecords.DataSource).Clone(); //DataTable dtSelectedData = (DataTable)dgSelectedRecords.DataSource; //if (dtSelectedData.Rows.Count >0) //{ // _oper = new clsSqlOperations(); // dtTemp = _oper.Minus(dgRecords.dtFullData, dtSelectedData); // dgRecords.dtCurrentData = dtTemp; //} //else //{ // dgRecords.dtCurrentData = dgRecords.dtFullData.Copy(); ; //} clsSqlOperations _oper; DataTable dtTemp; DataTable dtSelectedDataTemp = (DataTable)dgSelectedRecords.DataSource; DataTable dtSelectedData = dgRecords.dtFullData.Clone(); object[] objRow; int i = 0; foreach (DataRow _row in dtSelectedDataTemp.Rows) { objRow = new object[dtSelectedDataTemp.Columns.Count]; for (int k = 0; k < dtSelectedDataTemp.Columns.Count; k++) { //objRow[k] =(object)dgSelectedRecords.Rows[i].Cells[k].Value; objRow[k] = (object)_row[k]; } dtSelectedData.LoadDataRow(objRow, true); i++; } if (dtSelectedData.Rows.Count > 0) { _oper = new clsSqlOperations(); dtTemp = _oper.Minus(dgRecords.dtFullData, dtSelectedData); dgRecords.dtCurrentData = dtTemp; } else { dgRecords.dtCurrentData = dgRecords.dtFullData.Copy(); ; } }