File tree Expand file tree Collapse file tree 2 files changed +25
-2
lines changed
Expand file tree Collapse file tree 2 files changed +25
-2
lines changed Original file line number Diff line number Diff line change @@ -27,6 +27,7 @@ import LabelModule = require("ui/label");
2727import stackLayoutModule = require( "ui/layouts/stack-layout" ) ;
2828import helper = require( "../helper" ) ;
2929import view = require( "ui/core/view" ) ;
30+ import builder = require( "ui/builder" ) ;
3031
3132export function addLabelToPage ( page : PageModule . Page , text ?: string ) {
3233 var label = new LabelModule . Label ( ) ;
@@ -68,6 +69,15 @@ export function test_menuItem_inherit_bindingContext() {
6869 }
6970}
7071
72+ export function test_menuItem_inherit_bindingContext_inXML ( ) {
73+ var p = < PageModule . Page > builder . parse ( "<Page><Page.optionsMenu><MenuItem text=\"{{ myProp }} \" /></Page.optionsMenu></Page>" ) ;
74+ p . bindingContext = { myProp : "success" } ;
75+
76+ var menuItem = p . optionsMenu . getItemAt ( 0 ) ;
77+
78+ TKUnit . assertEqual ( menuItem . text , "success" , "menuItem.text" ) ;
79+ } ;
80+
7181export function test_Setting_OptionsMenu_doesnt_thrown ( ) {
7282
7383 var page : PageModule . Page ;
@@ -392,4 +402,4 @@ export var test_cssShouldBeAppliedAfterChangeToAllNestedElements = function () {
392402 finally {
393403 helper . goBack ( ) ;
394404 }
395- }
405+ }
Original file line number Diff line number Diff line change @@ -206,7 +206,20 @@ export class OptionsMenu implements dts.OptionsMenu {
206206 }
207207
208208 public setItems ( items : Array < MenuItem > ) {
209- this . _items = items ;
209+ if ( this . _items === items ) {
210+ return ;
211+ }
212+
213+ // Remove all existing items
214+ while ( this . _items . length > 0 ) {
215+ this . removeItem ( this . _items [ this . _items . length - 1 ] ) ;
216+ }
217+
218+ // Add new items
219+ for ( var i = 0 ; i < items . length ; i ++ ) {
220+ this . addItem ( items [ i ] ) ;
221+ }
222+
210223 this . invalidate ( ) ;
211224 }
212225
You can’t perform that action at this time.
0 commit comments