@DependsOn"

From Documentation
m ((via JWB))
m (replace tt with code (via JWB))
Line 13: Line 13:
 
'''Purpose:''' To notify change upon property's dependency.
 
'''Purpose:''' To notify change upon property's dependency.
  
It has the same function as <tt> @NotifyChange </tt> but inverse meaning. It's used to notify binder that getter method's target property is changed because one or more properties it depends on are changed. It can eliminate distributed <tt> @NotifyChange</tt> annotations in a ViewModel when a calculated property depends on multiple properties.
+
It has the same function as <code> @NotifyChange </code> but inverse meaning. It's used to notify binder that getter method's target property is changed because one or more properties it depends on are changed. It can eliminate distributed <code> @NotifyChange</code> annotations in a ViewModel when a calculated property depends on multiple properties.
  
 
= Example =
 
= Example =

Revision as of 14:14, 12 January 2022

Stop.png This article is out of date, please refer to zk-mvvm-book/8.0/syntax/viewmodel/dependson for more up to date information.


Syntax

@DependsOn

Description

Target: getter method

Purpose: To notify change upon property's dependency.

It has the same function as @NotifyChange but inverse meaning. It's used to notify binder that getter method's target property is changed because one or more properties it depends on are changed. It can eliminate distributed @NotifyChange annotations in a ViewModel when a calculated property depends on multiple properties.

Example

public class FullnameViewModel{
	private String firstname;
	private String lastname;
	public String getFirstname() {
		return firstname;
	}
	public void setFirstname(String firstname) {
		this.firstname = firstname;
	}

	public String getLastname() {
		return lastname;
	}
	public void setLastname(String lastname) {
		this.lastname = lastname;
	}
	
	@DependsOn({"firstname", "lastname"})
	public String getFullname() {
		return (firstname == null ? "" : firstname)	+ " "
				+ (lastname == null ? "" : lastname);
	}
}



Version History

Last Update : 2022/01/12


Version Date Content
6.0.0 February 2012 The MVVM was introduced.




Last Update : 2022/01/12

Copyright © Potix Corporation. This article is licensed under GNU Free Documentation License.