c# - Accessing the properties from a known view his viewmodel -


i have view contains usercontrol it's own view & viewmodel.

the usercontrol it's views looks this:

<usercontrol.datacontext>     <viewmodel:timepickerviewmodel x:name="timepickerviewmodel"/> </usercontrol.datacontext> 

in viewmodel of usercontrol have property validtime:

public datetime? validtime {     { return validtime; }     set     {         validtime = value;         onpropertychanged("validtime");     } } 

in view contains usercontrol need acces property validtime:

<timepicker:timepickerview grid.row="0" x:name="timepicker"/> <button grid.row="1" content="plan" command="{binding plancommand}" commandparameter="    {binding elementname=timepicker, path=validtime}"/> 

in viewmodel of last view have this:

public icommand plancommand {     { return plancommand ?? new relaycommand<datetime?>(plan); } }  void plan(datetime? date) {     if(pickedmagnet != null)             pickedmagnet.startdateplanned = date; } 

but datetime? parameter receive in plan method null. in debug mode i've seen property validtime assigned value. tried this:

<button grid.row="1" content="plan" command="{binding plancommand}" commandparameter="{binding elementname=timepicker.timepickerviewmodel, path=validtime}"/> 

and

<button grid.row="1" content="plan" command="{binding plancommand}" commandparameter="{binding elementname=timepicker, path=timepickerviewmodel.validtime}"/> 

but none of these works.

anyone knows solution or best practice situation?

after trying fixed way.

commandparameter="{binding elementname=timepicker, path=datacontext.validtime}" 

Comments

Popular posts from this blog

html - How to style widget with post count different than without post count -

How to remove text and logo OR add Overflow on Android ActionBar using AppCompat on API 8? -

javascript - storing input from prompt in array and displaying the array -