public void InsertRow(int index) { if (IsReadOnly) { LogDebug("is readonly"); return; } LogDebug("enter InsertRow"); if (index >= 0) { HoldDataSource(); var oldKey = ""; if (m_DataSource.Count > 1 && index < m_DataSource.Count) { oldKey = m_DataSource[index].UniqueKey; } var m = new VoucherGridItem(); m_DataSource.Insert(index, m); Refresh(); OnRowChangeEvent(null, oldKey, m.UniqueKey); } }
public void AppendRow() { LogDebug("enter AppendRow"); HoldDataSource(); if (CurrentRowIndex >= 0) { var ele = CheckRow(CurrentRowIndex); if (ele != null) { SetFocus(ele); return; } } var m = new VoucherGridItem(); m_DataSource.Add(m); var index = m_DataSource.Count - 1; if (index >= 0) { m_LastFocusControl = "txtContent_" + index; } Refresh(); }
void LoadVoucher(long id, LINKED linked = LINKED.CURRENT) { Voucher v = DataFactory.Instance.GetVoucherExecuter().Find(id, linked); VoucherHeader header = v.header; if (v.udefenties != null) { mUserDefineDataSource = v.udefenties; } mid = header.id; lblStatus.Visibility = Visibility.Hidden; UnLock(); txtBBillNo.Text = ""; txtAgent.Text = header.agent; txtCashier.Text = header.cashier; txtReference.Text = header.reference; lblCreater.Tag = header.creater; lblCreater.Content = DataFactory.Instance.GetUserExecuter().FindName(header.creater); dateBusinessDate.SelectedDate = header.businessDate; dateDate.SelectedDate = header.date; cmbWords.SelectedValue = header.word; intSn.Value = (int)header.serialNo; intNo.Value = (int)header.no; lblPeriod.Content = string.Format("{0}年第{1}期", header.date.Year, header.date.Month); List <VoucherGridItem> items = new List <VoucherGridItem>(); v.entries.ForEach(entry => { var item = new VoucherGridItem(); item.UniqueKey = entry.uniqueKey; item.AccountSubjectId = entry.accountSubjectId; item.Content = entry.explanation; if (entry.direction == 1) { item.DebitsAmount = entry.amount; } else { item.CreditAmount = entry.amount; } items.Add(item); }); voucherGrid.DataSource = items; logger.Debug("LoadVoucher:[{0}]", items.Count); voucherGrid.Refresh(); lblChecker.Tag = header.checker; lblChecker.Content = DataFactory.Instance.GetUserExecuter().FindName(header.checker); lblPoster.Tag = header.poster; lblPoster.Content = DataFactory.Instance.GetUserExecuter().FindName(header.poster); if (header.status > 0) { ShowStatusLable((VoucherStatus)(header.status)); Lock(); } }