Silverlight3 模擬三維透視

2022-02-05 09:22:04 字數 955 閱讀 8212

在silverlight中對三維透視的支援允許開發者使用的2d內容建立的3d體驗。三維透視也是一種更好地利用螢幕空間的好方法。讓我們來看乙個簡單的影象瀏覽應用程式如何使用三維透視改善外觀並更好地利用螢幕空間。不同於一次只顯示乙個影像,我們會展示乙個全解析度的主要影象和其他一些不同角度的透視的影像。

為了對影象進行三維投影,您需要設定影象的projection 屬性為planeprojection 。planeprojection提供的一套屬性將使得元素被視如三維空間中的形狀。將rotationy屬性設為70即沿y軸或叫垂直軸將物件旋轉70度。這將使得經過旋轉的元素看起來像是垂直於螢幕。下一步,我們要把這個元素往後並往右移,以騰出空間給其他的影象。為達到這一目的,我們要對globaloffsetx和globaloffsetz屬性進行設定。三維投影元素的輸入和事件如預期般運作,所以經三維投影的datagrid或文字框將具有普通控制項完全相同的功能。我們將繼續並新增其他4個影象和實施略有不同的角度透視轉換以完成這個程式。通過設定不同的globaloffsetx屬性值將把這些影象移動到左側或右側。

這就是最終的結果:

資料繫結的改進

elementname繫結允許開發人員在xaml中將乙個uielement繫結到另乙個上,而不需要寫事件處理程式。在silverlight 3的binding類中有乙個新的屬性叫elementname 。當elementname被設定後,繫結引擎會使用指定的元素作為資料**進行繫結。path屬性是指uielement繫結的資料來源的屬性。如果elementname指向dependencyproperty,繫結引擎會偵聽dependencyproperty的變化並相應更新繫結。這裡有乙個xaml片段,展示了乙個滑桿如何使用elementname繫結來控制**影象的不透明度:

上述xaml的顯示以下介面。移動滑塊改變藍龍的影象從完全透明到完全不透明:

Silverlight3動態訪問wcf

網路上設定silverlight動態訪問wcf服務,大多是拋開servicereferences.clientconfig檔案,完全以 方式實現對wcf的動態訪問。但這種做法存在實現複雜和侷限性。在實際使用的過程中,出於安全等原因,很多時候需要通過自定義繫結,設定很多內容。通過vs中的嚮導生成sil...

Silverlight 3試用手記

試用環境 wmware 6.5.2,windows xp sp3,512mb記憶體分配,15gb硬碟分配.以上虛機環境安裝完畢後,映象檔案大小是3.44gb.關於記憶體,本人還是建議分配得更大一些,儘管512跑起來也不是很慢.因為silverlight2和3的開發環境無法共存,所以使用虛機環境進行安...

Silverlight3初用手記

之前我還 說,在vs2008下該不支援的還不支援,不過沒想到在sl3更絕。在新建sl3專案的時候,乾脆沒有了設計檢視。不過,在公升級過來的sl3專案中,設計檢視居然還存在,真奇怪。sl3的客戶端經我測試相容sl2的。新建專案的時候多了asp.net mvc方式承載。離線,預設是沒有的,需要勾上乙個屬...