public LayoutView Item(string viewName) { //Return an existing view object from the layout view LayoutView view = null; try { //Merge from collection (dataset) if (viewName.Length > 0) { DataRow[] rows = this.mLayoutViews.ViewTable.Select("ViewName='" + viewName + "'"); if (rows.Length == 0) { throw new ApplicationException("View " + viewName + " does not exist for ti schedule!\n"); } LayoutDS.ViewTableRow row = (LayoutDS.ViewTableRow)rows[0]; if (row.Active) { view = this.mActiveView; } else { view = new LayoutView(viewName, this.mScheduleName, this.mMediator); } } else { view = (LayoutView)Item(); } view.ViewChanged -= new EventHandler(OnViewChanged); view.ViewChanged += new EventHandler(OnViewChanged); } catch (Exception ex) { throw ex; } return(view); }
public void Delete() { //Delete this entire layout view try { //Read the data store LayoutDS ds = new LayoutDS(); ds.Merge(this.mMediator.FillDataset(App.LAYOUT_FILE, "", null)); //Delete views entry from the view store LayoutDS.ViewTableRow row = (LayoutDS.ViewTableRow)ds.ViewTable.Select("ViewName='" + this.mViewName + "' AND ScheduleName='" + this.mScheduleName + "'")[0]; row.Delete(); //Delete all layout entries from the view store LayoutDS.LayoutTableRow[] rows = (LayoutDS.LayoutTableRow[])ds.LayoutTable.Select("ViewName='" + this.mViewName + "' AND ScheduleName='" + this.mScheduleName + "'"); for (int i = 0; i < rows.Length; i++) { rows[i].Delete(); } ds.LayoutTable.AcceptChanges(); this.mMediator.ExecuteNonQuery(App.LAYOUT_FILE, new object[] { ds }); Read(); } catch (Exception ex) { throw ex; } }