public PrizeLevelList() : base(ControlList.schedule.Tables[PrizeLevelNames.TableName], false) { //SetCurrent += new SetCurrentMethod( ControlList.data.SetCurrentSession ); CurrentObjectTableView table = ControlList.schedule.Tables[CurrentGameGroupPrizes.TableName] as CurrentObjectTableView; if (table != null) { AddCurrent += new AddCurrentMethod(table.AddChildMember); SetCurrent += new SetCurrentMethod(ControlList.data.SetCurrentPrize); } }
void schedule_DataSetReload(DataSet dataSet) { // somehow I have to tell all these current tables to fill themselves. foreach (DataTable table in Mytables) { CurrentObjectTableView cotv = table as CurrentObjectTableView; if (cotv != null) { cotv.Fill(); } } }
void DoClick() { if (!allow_edit) { MessageBox.Show("Edit is not enabled."); return; } ListBox list = null; Control c = Parent.Controls[_target_list]; int index = -1; if (c != null) { list = c as ListBox; if (list != null) { CurrentObjectDataView codv = list.DataSource as CurrentObjectDataView; index = list.SelectedIndex; if (codv != null) { IMySQLRelationTableBase relation_table = codv.Table as IMySQLRelationTableBase; if (relation_table != null) { relation_table.MoveRowUp(codv.Current); } } CurrentObjectTableView cotv = list.DataSource as CurrentObjectTableView; if (cotv != null) { IMySQLRelationTableBase relation_table = cotv.relation_data_table as IMySQLRelationTableBase; if (relation_table != null) { relation_table.MoveRowUp(cotv.Current); } } } } if (list != null && list.SelectedItem != null) { if (index > 0) { list.SelectedIndex = index; list.SelectedIndex = index - 1; } } }
void Init(DataView reference_view, DataTable reference_table) { ControlList.controls.Add(this); if (reference_view != null) { this.DataSource = reference_view; } if (reference_table != null) { CurrentObjectTableView IReferenceTable = reference_table as CurrentObjectTableView; //default_view = new DataView( reference_table ); //Type TableType = reference_table.GetType(); this.DataSource = reference_table; real_display_member = this.DisplayMember = (IReferenceTable == null) ? XDataTable.Name(reference_table) : XDataTable.Name(IReferenceTable.relation_data_table); } this.SelectedValueChanged += new EventHandler(MyListBox_SelectedIndexChanged); this.DisplayMemberChanged += new EventHandler(MyListBox_DisplayMemberChanged); }
public DataRow ReplaceSelected() { if (_target_list != null) { CurrentObjectTableView cotv = ControlList.schedule.Tables[_target_list] as CurrentObjectTableView; if (cotv == null) { MyListBox target_list = this.Parent.Controls[_target_list] as MyListBox; if (target_list != null) { cotv = target_list.DataSource as CurrentObjectTableView; } } if (cotv != null) { if (this.SelectedItem != null) { DataRowView drv = this.SelectedItem as DataRowView; return(cotv.ReplaceChildMember(drv.Row, cotv.Current)); } } } return(null); }
public DataRow InsertSelected() { CurrentObjectDataView codv = null; CurrentObjectTableView cotv = ControlList.schedule.Tables[_target_list] as CurrentObjectTableView; if (_target_list != null) { if (cotv == null) { codv = DataSource as CurrentObjectDataView; if (codv == null) { ListBox target_list = this.Parent.Controls[_target_list] as ListBox; if (target_list != null) { cotv = target_list.DataSource as CurrentObjectTableView; if (cotv == null) { codv = target_list.DataSource as CurrentObjectDataView; } } } } if (cotv != null || codv != null) { if (this.SelectedItem != null) { DataRowView drv = this.SelectedItem as DataRowView; if (cotv != null) { return(cotv.InsertChildMember(drv.Row, cotv.Current)); } else { return(codv.InsertChildMember(drv.Row, codv.Current)); } } } } else if (AddCurrent != null) { if (this.SelectedItem != null) { if (allow_edit) { DataRowView drv = this.SelectedItem as DataRowView; if (cotv != null) { cotv.AddChildMember(drv.Row); } else { codv.AddChildMember(drv.Row); } } else { MessageBox.Show("Editing is not enabled."); } } } return(null); }
/// <summary> /// Adds selected item to a list. Set target_list to the list to put the relation in. That will provide the parent to relate under /// </summary> /// <returns></returns> public static DataRow AddSelected(ListBox listbox) { MyListBox myListbox = listbox as MyListBox; if (myListbox != null && myListbox._target_list != null) { CurrentObjectDataView codv = null; CurrentObjectTableView cotv = ControlList.schedule.Tables[myListbox._target_list] as CurrentObjectTableView; if (cotv == null) { ListBox target_listbox = listbox.Parent.Controls[myListbox._target_list] as ListBox; if (target_listbox != null) { cotv = target_listbox.DataSource as CurrentObjectTableView; } if (cotv == null) { codv = target_listbox.DataSource as CurrentObjectDataView; } } if (cotv != null || codv != null) { if (listbox.SelectionMode == System.Windows.Forms.SelectionMode.MultiExtended || listbox.SelectionMode == System.Windows.Forms.SelectionMode.MultiSimple) { foreach (object item in listbox.SelectedItems) { if (cotv != null) { cotv.AddChildMember((item as DataRowView).Row); } else { codv.AddChildMember((item as DataRowView).Row); } } return(null); } else if (listbox.SelectedItem != null) { DataRowView drv = listbox.SelectedItem as DataRowView; if (cotv != null) { return(cotv.AddChildMember(drv.Row)); } else { return(codv.AddChildMember(drv.Row)); } } } } if (myListbox != null) { if (myListbox.AddCurrent != null) { if (listbox.SelectedItem != null) { if (myListbox.allow_edit) { DataRowView drv = listbox.SelectedItem as DataRowView; return(myListbox.AddCurrent(drv.Row)); } else { MessageBox.Show("Editing is not enabled."); } } } } return(null); }