c# - Setting control values in an instance of a user control WPF -



c# - Setting control values in an instance of a user control WPF -

i new wpf , mvvm , trying follow design, have created window multiple user controls (10 of each) on it. these user controls hold value should able entered user , sent database.

the issue have creating user controls pragmatically in canvass , not know how utilize these instances set values on command view model have savemethod binded save button save info database. help.

mainwindow.xaml.cs

public partial class mainwindow : window { public mainwindow() { initializecomponent(); clientratesviewmodel viewmodel = new clientratesviewmodel(); datacontext = viewmodel; viewmodel.getchargeunits(); int previoustopprerate = 10; foreach (var rate in viewmodel.clientratespreawr) { preawr preawr = new preawr(); preawr.tbpreawrrate.text = rate.clientratespreawr; preratescanvas.children.add(preawr); preawr.width = 500; canvas.setleft(preawr, 10); canvas.settop(preawr, previoustopprerate + 10); previoustopprerate += +30; } int previoustoppostrate = 10; foreach (var rate in viewmodel.clientratespostawr) { postawr postawr = new postawr(); postawr.tbpostawrrate.text = rate.clientratespostawr; postratescanvas.children.add(postawr); postawr.width = 500; canvas.setleft(postawr, 10); canvas.settop(postawr, previoustoppostrate + 10); previoustoppostrate += +30; } } }

itemscontrol xaml:

<itemscontrol name="icpreawr" margin="10,46,10,10"> <itemscontrol.itemtemplate> <datatemplate> <grid margin="0,0,0,5"> <grid.columndefinitions> <columndefinition width="*" /> <columndefinition width="100" /> </grid.columndefinitions> <textblock text="{binding clientratespreawr }" /> </grid> </datatemplate> </itemscontrol.itemtemplate> </itemscontrol>

technically origin right because defining view , datacontext. recommended utilize xaml if origin there no issue , no contradiction mvvm because code behind view code behind.

but here begins problems, instance instead of using foreach, should utilize itemscontrol itemtemplate preawr , itemssource clientratespreawr. feed itemscontrol , fill preawr itseld preawr usercontrol has tbpreawrrate set content {binding clientratespreawr} , fill value.

if need create code, properties of controls dependency properties , can bind them code using

https://msdn.microsoft.com/en-us/library/cc838207%28v=vs.95%29.aspx

i hope helps you, recommend create step design in xaml if project rules can done in way

indeed article helpful http://bit.ly/1coyrkq

c# wpf xaml mvvm

Comments

Popular posts from this blog

java - How to set log4j.defaultInitOverride property to false in jboss server 6 -

c - GStreamer 1.0 1.4.5 RTSP Example Server sends 503 Service unavailable -

Using ajax with sonata admin list view pagination -