public void update() { cs.PrepareForUpdate(); listView1.Items.Clear(); foreach (RabNetEngRabbit r in rbs) { ListViewItem li = listView1.Items.Add(r.FullName); li.SubItems.Add(r.BreedName); li.Tag = r.ID; li.SubItems.Add(r.Tag); String sex = "?"; if (r.Sex == Rabbit.SexType.FEMALE) { sex = "Ж"; } if (r.Sex == Rabbit.SexType.MALE) { sex = "М"; } li.SubItems.Add(sex); li.SubItems.Add(r.Age.ToString()); li.SubItems.Add(r.Group.ToString()); li.SubItems.Add(r.Group.ToString()); } //listView1.AutoResizeColumns(ColumnHeaderAutoResizeStyle.ColumnContent); cs.RestoreAfterUpdate(); updateLabels(); }
/// <summary> /// Тело метода содержится в наследниках класса RabNetPanel. /// Выполняется перед началом получения данных из Базы Данных /// </summary> /// <param name="f"></param> /// <returns></returns> protected virtual IDataGetter onPrepare(Filters f) { _rsb.FilterOn = f.Count != 0; _colSort.PrepareForUpdate(); this.Enabled = false; return(null); }
private IDataGetter rsb_prepareGet() { cs.PrepareForUpdate(); Filters f = fp.getFilters(); IDataGetter gt = Engine.db2().getDead(f); rsb.SetText(1, gt.getCount().ToString() + " записей"); return(gt); }
/// <summary> /// Заполняет ListView возможными кормилицами. /// </summary> public void updateMothers() { int ad = Engine.opt().getIntOption(Options.OPT_ID.COMBINE_AGE); cs.PrepareForUpdate(); listView1.Items.Clear(); foreach (AdultRabbit moth in Engine.db().getMothers(r.Age, ad)) { if (moth.ID != r.ParentID) { ListViewItem li = listView1.Items.Add(moth.NameFull); li.SubItems.Add(moth.Age.ToString()); li.SubItems.Add(moth.BreedName); li.SubItems.Add(moth.FStatus()); li.SubItems.Add(moth.Rate.ToString()); li.SubItems.Add(moth.FAddress()); li.SubItems.Add(moth.KidsAge.ToString()); if (_selmom == moth.ID) { li.SubItems.Add((moth.Group + r.Group).ToString()); //TODO выяснить зачем это li.SubItems.Add(r.Group.ToString()); nudCount.Value = 0; li.Selected = true; li.EnsureVisible(); } else { li.SubItems.Add(moth.KidsCount.ToString()); li.SubItems.Add(""); } li.Tag = moth.ID; } } if (listView1.Items.Count == 0) { MessageBox.Show("Нет кормилиц, которые сидят с крольчатами приближенного возраста." + Environment.NewLine + "Увеличьте значение параметра \"Объединение группы\"." + Environment.NewLine + "Либо отсадите кормилицу от молодняка."); btCancel.PerformClick(); return; } String txt = listView1.Items[0].SubItems[REPLCOL].Text; listView1.Items[0].SubItems[REPLCOL].Text = "10"; //listView1.AutoResizeColumns(ColumnHeaderAutoResizeStyle.ColumnContent); listView1.Items[0].SubItems[REPLCOL].Text = txt; cs.RestoreAfterUpdate(); }
private void fillTable() { cs.PrepareForUpdate(); Filters flt = new Filters(); flt[Filters.RAB_ID] = _rabFemale.ID.ToString(); flt[Filters.HETEROSIS] = chHetererosis.Checked ? "1" : "0"; flt[Filters.INBREEDING] = chInbreed.Checked ? "1" : "0"; flt[Filters.MALE_REST] = _opt_malewait.ToString(); flt[Filters.MAKE_CANDIDATE] = _opt_makeCand.ToString(); flt[Filters.SHOW_CANDIDATE] = chCandidates.Checked ? "1" : "0"; flt[Filters.SHOW_REST] = chRest.Checked ? "1" : "0"; //TODO здесь трахатели идеалогически неверно передаются через объекты Трахов FuckPartner[] fs = Engine.db().GetAllFuckers(flt); listView1.BeginUpdate(); foreach (FuckPartner fP in fs) { bool heter = (fP.BreedId != _rabFemale.BreedID); bool inbr = RabNetEngHelper.inbreeding(_rabFemale.Genoms, fP.OldGenoms); ListViewItem li = listView1.Items.Add(fP.FullName); li.UseItemStyleForSubItems = false; if (fP.LastFuck != DateTime.MinValue && DateTime.Now < fP.LastFuck.Date.AddDays(_opt_malewait)) { li.SubItems[IND_NAME].ForeColor = chRest.ForeColor; } li.Tag = fP; li.SubItems.Add("Мальчик"); if (fP.Status == 1 || (fP.Status == 0 && fP.Age >= _opt_makeCand)) { li.SubItems[IND_STATE].Text = "Кандидат"; li.SubItems[IND_STATE].ForeColor = chCandidates.ForeColor; } if (fP.Status == 2) { li.SubItems[IND_STATE].Text = "Производитель"; } li.SubItems.Add(_breeds[fP.BreedId]); li.SubItems.Add(fP.F***s.ToString()); li.SubItems.Add(fP.MutualChildren.ToString()); li.SubItems.Add(inbr ? "ДА" : "-"); int inbrLevel = 0; if (RabbitGen.DetectInbreeding(_rabFemale.RabGenoms, fP.RabGenoms, ref inbrLevel)) { li.SubItems.Add(inbrLevel.ToString() + " поколение"); } else { li.SubItems.Add("-"); } if (heter) { li.SubItems[IND_BREED].ForeColor = chHetererosis.ForeColor; } if (inbr) { li.SubItems[IND_INBR].ForeColor = chInbreed.ForeColor; } if (_rabMaleId == fP.Id) { li.Selected = true; li.EnsureVisible(); } } // если был передан партнер, но его нет в списке, то обнуляем его, т.к. он не был выбран if (listView1.SelectedItems.Count == 0) { _rabMaleId = 0; } else { listView1_SelectedIndexChanged(null, null); } listView1.EndUpdate(); cs.RestoreAfterUpdate(); }