前幾天寫了乙個繫結資料的小demo
具體實現的內容是:
1、在系統正式啟動時例項化5個資料物件
2、實現在頁面上逐個操作顯示資料
具體步驟如下:
1、新建乙個專案,新增乙個公共類person,其中含有人的屬性(一依據個人要求寫啦,像姓名、**什麼的)
2、在主頁面的**實現頁面中例項化person類並初始化(直接new person,例項化了5個物件)
3、實現上一張,下一張的**(我用的是if…else…實現的,但要指出,if…else…有點浪費的感覺,可以使用switch實現一樣的**)
4、在主頁面中布局,使用畫布控制項,在畫布控制項中新增乙個image和幾個textblock
5、新增實現翻頁的按鈕
6、繫結畫布控制項的資料(用的是this.canvas1.datacontext = 例項化的類名)
遇到的問題:
在頁面上逐個操作顯示資料,開始我想的是將當前畫布的類具體化為乙個string,將5個例項化的類名都儲存到乙個string陣列中,
問題出現了1、將當前畫布的類具體化為乙個string,當前畫布的類名是string不代表這就是乙個string,用this.canvas1.datacontext讀到的只是乙個object型別的東西,我又例項化乙個person類,將從canvas中讀到的object賦值給新例項化的person然後讀取名字,但是這個時候讀到的僅僅是strinrg型別,雖然用的是if判斷,且滿足讀取到的string與string陣列中的string相等,用this.canvas1.datacontext=next時只是讓canvas等於乙個string而不是乙個類,所以會出錯
分析好就解決問題,既然用this.canvas1.datacontext讀取到的只是object型別,為什麼我不直接宣告為object型別的陣列呢?果然宣告為object型別的陣列就好用多了,直接將object型別的元素賦值給this.canvas1.datacontext就ok,
具體**:
view code
1第二種種方法:object per = new
object[5
] ;2
object dangqian = this
.canvas1.datacontext;
3object
next;
4for (int i = 0; i < per.length; i++)512
else
1317
}18 }
先例項化canvas,將其內容讀取,然後用switch進行劃分和重新賦值,用switch比for效率高
view code
1 person dangqian=new第三種方法:person ();
2 dangqian = (person)this
.canvas1.datacontext;
3string a=dangqian.name;45
switch
(a)6
第三種方法,在方法外部宣告乙個例項化的當前類now然後依然用switch分支語句
view code
1switch
(now.id)
2
Windows Phone 中的彈出視窗
由於目前的silverlight for windows phone 中不支援childwindow,所以當我們想要彈出一些視窗時,只能自己想辦法了。第一種方法是messagebox,相當的簡單,當然你也可以給它加上一些樣式。第二種方法是 檢視silverlight中 childwindow的定義方...
Windows Phone誕生的幕後故事
赫芬頓郵報 the huffington post 評價windows phone時說 太好了。網路雜誌 slate 認為,windows phone系統是智慧型手機系統中最漂亮的。而techcrunch則評價說 wp遠好於大多android手機。長久以來,微軟被視為缺乏創新的科技企業。科技部落格們...
Windows Phone 的控制項傾斜效果
windows phone 7的系統設定裡,按鈕都有乙個點選傾斜的效果,但自己新增的控制項就沒有。但微軟提供了這個效果的 tilteffect msdn的介紹 把裡面的tilteffect.cs新增到自己的專案,改一下這個檔案的命名空間,然後修改要使用傾斜效果的xaml頁面 頭部宣告中新增 xmln...