2012年3月7日 星期三

改變 ApplicationBar 的 IconButton

在code-behide中調用 會產生NullReferenceException
那要怎麼動態更改裡面的屬性呢?

其實PhoneApplicationPage中 有封裝一個ApplicationBar可以直接調用

那如果要改變裡面ApplicationBarIconButton的屬性呢?
這時候會發現ApplicationBar.Buttons不能直接Select裡面的ApplicationBarIconButton...囧
那怎麼解決呢?

方法一: 利用event中 回傳的 sender 轉型為 ApplicationBarIconButton
方法二: 利用ApplicationBar.Buttons 裡面的remove 和 insert
方法三: 直接在code-behide中定義ApplicationBar


方法二 code:
ApplicationBarIconButton _Button = new ApplicationBarIconButton (new Uri ("/x.png", UriKind.Relative));
 _Button.Click += new EventHandler (IconClick);
 _Button.Text = "xxx";
ApplicationBar.Buttons.RemoveAt (0);
ApplicationBar.Buttons.Insert (0, _Button);


沒有留言:

張貼留言