我使用VS 2012,c#和WPF。
所以我的用户有问题。她有许多项目要使用我的程序插入到数据库中,除ID之外的所有项目都相同。所以200件衬衫,价格相同,来自同一个零售商,所有都在同一个地方。
这就是我所拥有的,一种被表格上的按钮点击的方法
public void Kopiraj()
{
Adress oprema = _applicationPresenter.UbrzajAdress.First();
oprema.IsNew = true;
oprema.IsReadOnly = false;
var obj = (from a in CurrentObjekti
where a.ObjekatId == oprema.SifraObjekta
select a).First();
var pro = (from pr in _applicationPresenter.CurrentProstor
where pr.Sifra_Prostor == oprema.SifraProstora
select pr.Naziv).First();
// this.View.naziv.DataContext = oprema.Naziv;
this.View.naziv.Text = oprema.Naziv;
// this.View.DataContext = _applicationPresenter.ListAdress;
this.View.brojNaloga.Text = oprema.BrojNaloga;
this.View.datumIsknjizenja.Text = oprema.DatumIsknjizenja.ToString();
this.View.datumNabavke.Text = oprema.DatumNabavke.ToString();
this.View.datumZaduzenja.Text = oprema.DatumZaduzenja.ToString();
this.View.dobavljac.Text = oprema.Dobavljac.ToString();
this.View.inventurniBroj.Text = oprema.InventurniBroj.ToString();
this.View.jedCijena.Text = oprema.JedCijena.ToString("F");
this.View.kolicinaNabavna.Text = oprema.KolicinaNabavna.ToString();
this.View.kolicinaOtpisana.Text = oprema.KolicinaOtpisana.ToString();
this.View.kolicinaTrenutna.Text = oprema.KolicinaTrenutna.ToString();
this.View.konto.Text = oprema.Konto.ToString();
this.View.kontoIsp.Text = oprema.KontoIsp.ToString();
this.View.mjera.Text = oprema.JedinicaMjere.ToString();
_applicationPresenter.LoadObjekti();
this.View.objekti.SelectedValue = oprema.SifraObjekta;
this.View.objekti.ItemsSource = _applicationPresenter.CurrentObjekti;
this.View.objekti.SelectedValuePath = obj.ObjekatId.ToString();
this.View.objekti.DisplayMemberPath = obj.LookupObjekat;
//this.View.objekti.SelectedItem = oprema.NazivObjekta;
this.View.objekti.Text = obj.LookupObjekat;
this.View.prostor.Text = pro.ToString();
this.View.status.Text = oprema.Status;
this.View.vrijednost.Text = oprema.Vrijednost.ToString("F");
this.View.zaduzio.Text = oprema.Zaduzio.ToString();
}
当它将数据复制到表单时,它就像那里没有任何东西,当我点击保存对象是所有空值,就像它没有为它分配任何值,即使文本框已填充。如果我用鼠标进入一个盒子,它似乎识别了值并分配它,但如果我只是点击复制然后保存(而不是像一个疯狂的人一样通过所有方框),我得到了nada。我特别挣扎于组合框,因为当它填满所需的文本时,框的其余部分是空的,它没有填充任何空白。
如果有更好的方法可以做到这一点,我就是从头开始,这只是我对如何做到的想法。此外,如果有任何关于此类功能的链接或教程,我搜索谷歌,但没有提出满足我特定需求的任何内容。
答案 0 :(得分:1)
只需创建一个用于保存表单值的对象,即可实现所需。这可以通过将此对象的属性直接与表单字段绑定,或者甚至通过在按下保存按钮时手动填充它来实现。保存表单值后,只需从对象中重新填充各种表单域。
答案 1 :(得分:0)
关于&#34的问题部分;如果有更好的方法来执行此操作",我们使用添加UI的保存/保存和新建/取消按钮选项解决了这个问题。
" Save and New"如果选中,则值将保存到数据库中,但不会从UI中清除。然后,用户可以更改他们想要的项目,例如增量编号,然后再次保存。
我们的解决方案是在MVC中,因此我们的大多数代码都不适用于您的WPF应用程序。然而,这些概念和想法可能会帮助你。
如果您需要更多信息或扩展工作流程,请告诉我们我们是如何做到这一点的,并且我会写一个更详细的答案,也可以用于WPF。