上回我們討論了如何從聯絡人選擇器中選擇聯絡人記錄。但,我們也許會發現乙個問題,我們都知道,我們
選擇的聯絡人都是通過microsoft帳號從雲伺服器取出來的,那麼,如果我有自己的聯絡人資料呢?比如,
保豐在本地資料檔案中的,或者從我的web服務中獲取的聯絡人呢?那這種情況下,還能用聯絡人選擇器來選擇嗎?
答案當然是肯定的,在windows store公開的api中,是允許我們對某些特殊的應用程式或ui進行自定義擴
展,如前面我們提到的開啟檔案ui,儲存檔案ui,以及選取聯絡人資訊ui都是可以擴充套件的。
這些擴充套件使用起來不難,只是剛剛接觸的話,可能你會感到有些複雜,所以,還是那句話:熟能生巧,實踐才能找到真理。
我們看看這個選擇器是如何被擴充套件的,如果你安裝過大智慧型軟體或者我們今天的應用,在選在聯絡人時,會看到下面的介面。
也就是說,這些擴充套件的應用,都整合到聯絡人選擇器中了。
不多說了,action!我們一邊動手一邊討論吧。
1、啟動vs for win8,隨便哪個版本,支援就行。新建專案,選擇你喜歡的語言(c#),在模板中選擇
空白頁面應用程式。
2、這樣吧,我們把核心知識放到前面吧,先做好護展選擇器的部分吧。
開啟「解決方案資源管理器」視窗,在專案上右擊,在彈出的選單中選擇「新增」-「新建項」,接著彈出乙個新
建項視窗,選擇空白頁,我們就命名為mycontactspage.xaml。
這個頁面不算複雜,只放乙個listview控制項,這個頁面就會成為我們啟動聯絡人選擇器時顯示的列表。
"xmlns:x="
"xmlns:mc="
"mc:ignorable="d">
注意頁面的資源部分,我宣告了乙個collectionviewsource,而listview的資料來源正是從它裡面取,所以在 li
stview宣告的時候,我們用binding來獲取資料。
/// 聯絡人名字
///
public string name
///
/// 聯絡人手機號碼
///
public string cellphoneno
///
/// 聯絡人電郵位址
///
public string emailaddress
///
/// 獲取測試資料源
///
///
public static observablecollectiongetcontactsamples()
);mclist.add(new custcontact );
mclist.add(new custcontact );
mclist.add(new custcontact );
mclist.add(new custcontact );
mclist.add(new custcontact );
mclist.add(new custcontact );
mclist.add(new custcontact );
mclist.add(new custcontact );
mclist.add(new custcontact );
return mclist;}}
4、處理listview的selectionchanged事件,以響應使用者的選擇操作。
private void lvcontacts_selectionchanged_1(object sender, selectionchangedeventargs e)
contactfieldfactory ctfactory = new contactfieldfactory();
// 將選中的項新增到已選聯絡人列表
foreach (var itemadded in e.addeditems)
}// 將未選中的聯絡人從已選列表中刪除
foreach (var removeditem in e.removeditems)}}
已經選擇的項就新增到選擇器的聯絡人列表中,而沒有被選中的就從聯絡人列表中移除。新增聯絡人
列表時(addcontact方法呼叫)有乙個id引數,我們可以用聯絡人的名字作為其id值。
Android 開發聯絡人管理
新增聯絡人 乙個新增聯絡人資訊的例子 public void addcontact string name,string mobile 查詢聯絡人 public void getcontact 更新聯絡人 public void updatacontact long rawcontactid,str...
Win8 應用開發介紹(二) Win8應用為王
1 win8應用商店 2 互相感知的應用 win8的應用之間可以互相感知,所謂互相感知就是應用知道相應格式的檔案怎麼處理,這個應用處理完了可以直接給下乙個應用接手。比如有一張,可以直接有按鈕上傳到facebook,或者我這邊在用編輯工具編輯的時候,旁邊就有shortcut可以直接分享到faceboo...
手把手玩轉win8開發系列課程(15)
8 9 通過了名稱和內容這兩個屬性,能夠區分buttons之間不同的屬性,這個automationproperties.name顯示button下的文字,context顯示使用icon圖示。值的屬性是顯示segoe ui 的字母特徵。你可以看到圖示也是win8中的圖示定義。這樣樣式也不能滿足你樣式。...