protected virtual void SetFormState(FinOrgFormState state) { _currentState = state; Type type; PropertyInfo prop; foreach (FinOrgFormState st in FormStateControlVisibility.Keys) { if (state == st) { continue; } foreach (Object o in FormStateControlVisibility[st]) { type = o.GetType(); prop = type.GetProperty("Visible"); if (prop != null && prop.CanWrite) { prop.SetValue(o, false, null); } } } foreach (Object o in FormStateControlVisibility[state]) { type = o.GetType(); prop = type.GetProperty("Visible"); if (prop != null && prop.CanWrite) { prop.SetValue(o, true, null); } } }
protected override void SetFormState(FinOrgFormState state) { bool ReadOnly = false; ShowHideDGridView(false, subscription_datagrid); ShowHideDGridView(false, customer_datagrid); switch (state) { case FinOrgFormState.Reset: // clear and set to view mode customer_tb.Text = string.Empty; code_tb.Text = string.Empty; trans_date.Value = DateTime.Today; start_date.Value = DateTime.Today; items.DataSource = null; SetFormState(FinOrgFormState.View); ReadOnly = true; break; case FinOrgFormState.View: // View ReadOnly = true; break; case FinOrgFormState.Edit: // Edit ReadOnly = false; break; case FinOrgFormState.New: ReadOnly = false; // Set DataSource for Rates a new table items.DataSource = _data.Tables["TR_SUBSCRIPTION_ITEM"].Clone().DefaultView; break; } code_tb.ReadOnly = ReadOnly || state == FinOrgFormState.Edit; customer_tb.ReadOnly = ReadOnly; trans_date.Enabled = !ReadOnly; start_date.Enabled = !ReadOnly; items.ReadOnly = ReadOnly; discount_tb.ReadOnly = ReadOnly; advance_tb.ReadOnly = ReadOnly; payment_period_cb.Enabled = !ReadOnly; base.SetFormState(state); }
/// <summary> /// States /// 0. Reset /// 1. View /// 2. Edit /// 3. New /// </summary> protected override void SetFormState(FinOrgFormState state) { bool ReadOnly = false; switch (state) { case FinOrgFormState.Reset: // clear and set to view mode service_code_tb.Text = string.Empty; service_ename_tb.Text = string.Empty; service_aname_tb.Text = string.Empty; searchBox.Text = string.Empty; ratesDataGrid.DataSource = null; ShowHideServiceDGridView(false); SetFormState(FinOrgFormState.View); ReadOnly = true; break; case FinOrgFormState.View: // View ReadOnly = true; break; case FinOrgFormState.Edit: // Edit ReadOnly = false; break; case FinOrgFormState.New: ReadOnly = false; // Set DataSource for Rates a new table ratesDataGrid.DataSource = _data.Tables["TR_SERVICE_RATES"].Clone().DefaultView; break; } service_ename_tb.ReadOnly = ReadOnly; service_aname_tb.ReadOnly = ReadOnly; service_code_tb.ReadOnly = ReadOnly || state == FinOrgFormState.Edit; ratesDataGrid.ReadOnly = ReadOnly; base.SetFormState(state); }