A damn at han’s Windows phone book 笔记(2:Flashlight)
添加Application Bar
用 Expression Blend很直觀。
添加Application Bar:右擊 Objects and Timeline 面板上的PhoneApplicationPage,選擇 Add ApplicationBar。
添加ApplicationBarIconButton: 右擊ApplicationBar,選擇Add ApplicationBarIconButton。
添加ApplicationBarMenuItem: 右擊ApplicationBar,選擇Add ApplicationBarMenuItem。(下面僅以IconButton為例,MenuItem與其類似)
ApplicationBarIconButton的屬性面板:
Name用來命名。Search欄用來搜索屬性,不過ApplicationBarIconButton的屬性太少,都展開在下面了。
IconUri下拉框能找到很多自帶的按鈕圖標,…可以自定義圖標文件路徑。
Text是:在觸摸右邊…的時候,圖標按鈕上浮,露出在每個圖標下方的介紹性文字。
若要添加事件,則選擇到右上閃電所在的面板,在Click后面的文本框里雙擊。
?
逐個設置比較麻煩,因此用循環為每個菜單項的點擊事件綁定方法:
using Microsoft.Phone.Shell;?? 使ApplicationBarMenuItem可見
foreach (ApplicationBarMenuItem menuItem in this.ApplicationBar.MenuItems)
{
?????? menuItem.Click += new EventHandler(ApplicationBarMenuItem_Click);
}
在ApplicationBarMenuItem_Click里把sender類型轉換成ApplicationBarMenuItem取到不同的屬性值。
作者的代碼中用的是接口IApplicationBarMenuItem而非具體的類ApplicationBarMenuItem,原因是微軟的wp team為了將來擴展更靈活,但這里我們不必在乎。
?
ApplicationBarIconButton的初始化
ApplicationBarIconButton控件只在Xaml里面有是不行的,InitializeComponent并不能初始化它
// Assign application bar buttons to member fields, because this cannot be done by InitializeComponent:
this.sosButton = this.ApplicationBar.Buttons[0] as ApplicationBarMenuItem;
this.strobeButton = this.ApplicationBar.Buttons[1] as ApplicationBarMenuItem;
?
作者的源碼里,是把所有圖片放到了Images目錄下。但是通過Blend去添加圖片的時候,會自動創建icons目錄,因此還是統一放到icons目錄里好些。
?
Windows Phone的MessageBox是簡化了的,只有兩個按鈕,且按鈕文本不能自定義。若要自定義MessageBox,則需要用到Microsoft.Xna.Framework.GamerServices。詳見58頁。
轉載于:https://www.cnblogs.com/dc10101/archive/2011/09/27/2193216.html
《新程序員》:云原生和全面數字化實踐50位技術專家共同創作,文字、視頻、音頻交互閱讀總結
以上是生活随笔為你收集整理的A damn at han’s Windows phone book 笔记(2:Flashlight)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 泛型与操作符重载杂谈
- 下一篇: 2011年9月最新整理的10个有趣的jQ