一区二区久久-一区二区三区www-一区二区三区久久-一区二区三区久久精品-麻豆国产一区二区在线观看-麻豆国产视频

Silverlight融合ajax實(shí)現(xiàn)前后臺(tái)數(shù)據(jù)交互

事出偶然,本來(lái)公司強(qiáng)調(diào)的是用WCF 做項(xiàng)目審批流程,WPF /E 增強(qiáng)用戶體驗(yàn);由于個(gè)人的無(wú)知與偷懶,我產(chǎn)生了天真的想法:用WPF/E 來(lái)做審批流程,這不是一舉兩得嗎。
下面介紹的就是用Silverlight (微軟在07 年9 月將WPF/E 更名為Silverlight )融合ajax 做的審批流程。界面上的審批流程從下向上包括3部分,部門審批,科技處審批,廠長(zhǎng)審批。實(shí)現(xiàn)的功能是可以定制審批流程,比如審批流程是部門審批--> 廠長(zhǎng)審批,也可以定制成科技處審批--> 廠長(zhǎng)審批。定制的數(shù)據(jù)存在后臺(tái)xml 文件中。
前臺(tái)Silverlight 表現(xiàn)層語(yǔ)言xaml , 后臺(tái)服務(wù)器腳本語(yǔ)言C# ,數(shù)據(jù)存儲(chǔ)格式xml ,中間數(shù)據(jù)傳輸技術(shù)ajax 。
.NET中嵌入Silverlight Page 的方法是在ASPx 中調(diào)用js 函數(shù)傳遞xaml 文件相對(duì)于服務(wù)器的路徑,如下:
復(fù)制代碼 代碼如下:
<div style="width: 662px;height: 622px" id="SilverlightControlHost" >
<script type="text/Javascript"><!--
createsL( 'workflow.xaml' );
// --></script>
</div>

函數(shù)調(diào)用Silverlight 的createObjectEx 方法指定xaml source 、parentElement 、events 等,相應(yīng)代碼如下:
復(fù)制代碼 代碼如下:
function createSL(xamlpage)
{
Silverlight.createObjectEx({
source: xamlpage,
parentElement: document.getElementById("SilverlightControlHost"),
id: "SilverlightControl",
properties: {
width: "100%",
height: "100%",
version: "1.1",
enableHtmlAccess: "true"
},
events: {
onLoad:OnLoaded
}
});
// Give the keyboard focus to the Silverlight control by default
document.body.onload = function() {
var silverlightControl = document.getElementById('SilverlightControl');
if (silverlightControl)
silverlightControl.focus();
}
}

還要做的工作是在xaml 后臺(tái)cs 文件中[ Scriptable ] 表現(xiàn)層WPF 類(當(dāng)初是Cavas),將該類注冊(cè)為可腳本化對(duì)象(RegisterScriptableObject)和可腳本化event ,并且在js 的events 設(shè)定表現(xiàn)層中的event ,實(shí)現(xiàn)方法如下:
xaml代碼:
[Scriptable]
復(fù)制代碼 代碼如下:
public partial class workflow : Canvas
{
public workflow()
{
WebApplication.Current.RegisterScriptableObject("wpfe", this);
}
......
[Scriptable]
public event EventHandler workflowFunc;
}

js代碼:
復(fù)制代碼 代碼如下:
function OnLoaded(sender,args)
{
sender.Content.wpfe.workflowFunc = onWorkflow;
}

另外,如果js 調(diào)用xaml 中的可腳本化函數(shù)的方法是
var control = document.getElementById("SilverlightControl");
var onReturnWfResult = control.Content.wpfe;
將xaml 中數(shù)據(jù)傳輸給后臺(tái)處理就用到ajax 技術(shù)了,在本例中是在onWorkflow 事件中定義XMLHttpRequest,然后通過(guò)該ajax 對(duì)象將數(shù)據(jù)傳遞到后臺(tái)。該例中的后臺(tái)腳本語(yǔ)言是C# ,數(shù)據(jù)接收方法是Request.Params 。

AspNet技術(shù)Silverlight融合ajax實(shí)現(xiàn)前后臺(tái)數(shù)據(jù)交互,轉(zhuǎn)載需保留來(lái)源!

鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請(qǐng)第一時(shí)間聯(lián)系我們修改或刪除,多謝。

主站蜘蛛池模板: 午夜视频在线观看一区 | 在线播放国产区 | 久久99久久99精品 | 韩国日本理论片 | 婷婷影院在线观看 | www.五月婷| 亚洲涩综合| 免费国产人做人视频在线观看 | 视频一区二区不卡 | 亚洲视频二区 | 久久亚洲精品无码观看不卡 | 欧美成年黄网站色高清视频 | 日本欧美一区二区三区视频麻豆 | 国产精自产拍久久久久久 | 2021国产精品系列一区二区 | 最新福利小视频在线播放 | 亚洲国产成人久久精品动漫 | 国产成人午夜片在线观看 | 国产精品四虎在线观看免费 | 国产成人精品免费视频大全五级 | 成年美女黄网站色大片视频 | 国产一区二区三区在线观看视频 | 能在线观看的一区二区三区 | 97午夜精品 | 成人情趣视频无遮掩免费 | 免费激情网址 | 久久精品无码一区二区日韩av | 欧美另类极品videosbest视 | 国产网站视频 | 一区二三国产 | 高清一区高清二区视频 | 欧美视频色 | 国产精品亚洲第一区焦香 | 美女图片在线视频精品播放 | 亚洲天堂中文网 | 美女一级ba大片免色野外 | 亚洲天堂久久精品成人 | 精品成人乱色一区二区 | 在线免费观看色 | 日韩午夜视频在线观看 | 国产美女一区二区在线观看 |