日本综合一区二区|亚洲中文天堂综合|日韩欧美自拍一区|男女精品天堂一区|欧美自拍第6页亚洲成人精品一区|亚洲黄色天堂一区二区成人|超碰91偷拍第一页|日韩av夜夜嗨中文字幕|久久蜜综合视频官网|精美人妻一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
Python創(chuàng)建Silverlight控件編寫過程經(jīng)驗(yàn)分享

Python編程語言可以幫助我們實(shí)現(xiàn)哪些功能呢?它的主要應(yīng)用范圍都包括哪些呢?我們今天先來了解一下有關(guān)Python創(chuàng)建Silverlight控件的相關(guān)實(shí)現(xiàn)方法,以此來初步熟悉一下這一語言的應(yīng)用方式以及功能特點(diǎn)。#t#

10余年的南通網(wǎng)站建設(shè)經(jīng)驗(yàn),針對設(shè)計(jì)、前端、開發(fā)、售后、文案、推廣等六對一服務(wù),響應(yīng)快,48小時(shí)及時(shí)工作處理。營銷型網(wǎng)站的優(yōu)勢是能夠根據(jù)用戶設(shè)備顯示端的尺寸不同,自動(dòng)調(diào)整南通建站的顯示方式,使網(wǎng)站能夠適用不同顯示終端,在瀏覽器中調(diào)整網(wǎng)站的寬度,無論在任何一種瀏覽器上瀏覽網(wǎng)站,都能展現(xiàn)優(yōu)雅布局與設(shè)計(jì),從而大程度地提升瀏覽體驗(yàn)。創(chuàng)新互聯(lián)從事“南通網(wǎng)站設(shè)計(jì)”,“南通網(wǎng)站推廣”以來,每個(gè)客戶項(xiàng)目都認(rèn)真落實(shí)執(zhí)行。

其實(shí)關(guān)注Silverlight很久了,只是最初的版本令我很失望,1.0的Silverlight在我看來,就相當(dāng)于強(qiáng)化版的VML或者SVG而已,多年以前(04年)我一直期待微軟能出一個(gè)強(qiáng)大的web端插件,能夠跟flash競爭,這么久以后,這個(gè)東西才逐漸變成現(xiàn)實(shí)。

好吧,Silverlight 2有了,盡管它還是beta 版,先玩玩吧。我搞了一個(gè)Visual Studio 2008 Express版,裝了Web跟C#,竟然都不支持2.0的Silverlight開發(fā),有沒有搞錯(cuò),就是沖著那些控件才來玩SL的,這怎么辦。

這可郁悶死我了,于是我只好乖乖裝完整版本的Visual Studio 2008,這玩意大得很,我把硬盤空間整理了又整理,勉強(qiáng)弄出一點(diǎn)地盤給它,N久之后終于裝完,折騰了半天,那個(gè)該死的插件又裝不上,搞了好久還是不行,我很生氣,算了,不搞它了。

于是我決定Python創(chuàng)建Silverlight控件不要VS2008了,聽說Silverlight 2.0支持動(dòng)態(tài)語言,好,來玩玩。我以前是做JavaScript的,換個(gè)吧,我來玩玩Python,于是我就找例子,一找找到了,怎么呢,我來寫了:

這里是XAML文件app.xaml

 
 
 
  1. < Canvas xmlns="http://schemas.microsoft.com/client/2007"   
  2. xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"   
  3. x:Class="System.Windows.Controls.Canvas" x:Name="Page" 
    Width="400" Height="300">   
  4. < TextBlock x:Name="MsgText" Canvas.Top="10" Canvas.Left="10"> 
  5. < /TextBlock>   
  6. < Button x:Name="TestButton" Canvas.Top="40" Canvas.Left="10" 
    Content="Test">< /Button>   
  7. < /Canvas> 

這里是Python文件app.py

 
 
 
  1. from System.Windows import Application   
  2. from System.Windows.Controls import *   
  3. from System.Windows.Browser import *   
  4. class App:   
  5. def __init__(self):   
  6. self.scene = Application.Current.LoadRootVisual(Canvas(), "app.xaml")   
  7. def start(self):   
  8. self.scene.TestButton.Click += self.TestButton_Click   
  9. def TestButton_Click(self, sender, eventArgs):   
  10. self.scene.MsgText.Text = "Hello, world!"   
  11. App().start() 

其他的沒什么懸念了,Chiron /d,開始跑,http://localhost:2060/index.htm上出現(xiàn)了效果,一個(gè)文本框,一個(gè)按鈕,點(diǎn)一下按鈕,框里面出來一個(gè)hello, world!

于是我就很激動(dòng),原來是這么好玩的啊,貌似Python創(chuàng)建Silverlight控件寫起來也很簡單的哇,那我來搞兩個(gè)復(fù)雜一點(diǎn)的控件。什么控件比較帥呢,我一想,日歷吧,這個(gè)東西好,那我就開始了,我加了一行

 
 
 
  1. < Calendar x:Name="TestCalendar" Canvas.Top="10" Canvas.Left="10"/> 

好了,開始跑,咦,不對,說找不到Calendar這個(gè)東西,研究了一下文檔,發(fā)現(xiàn)這個(gè)是包含在System.Windows.Controls.Extended.dll里面,于是我把這個(gè)dll拷到app目錄下,還是不行,怪啊,這要怎么辦呢,到處找了一遍,發(fā)現(xiàn)竟然沒有有關(guān)Python調(diào)用SL擴(kuò)展控件的文章,這可痛苦了。

但是我不甘心,我相信微軟不會(huì)這么不友好,于是我繼續(xù)查幫助,咦,Calendar前面要加一個(gè)前綴做命名空間,但是XAML頭上怎么定義呢,我想了想,實(shí)在想不出來,然后我很猥瑣地想到了Blend,嘿嘿,我下載了一個(gè),安裝,創(chuàng)建項(xiàng)目,然后創(chuàng)建控件,這個(gè)時(shí)候只有內(nèi)部控件可以用,然后我在項(xiàng)目上添加引用到SDK目錄下的System.Windows.Controls.Extended.dll,于是就可以創(chuàng)建日歷了。

我要的可不是這個(gè)哦,切換到XAML欄,看到?jīng)]有,這行代碼:

xmlns:System_Windows_Controls_Extended="clr-namespace:System.Windows.Controls; assembly=System.Windows.Controls.Extended",原來就是它在起作用呵,于是我照樣定義了一遍,仍然不行。。。

這是怎么回事?繼續(xù)發(fā)奮研究文檔,終于發(fā)現(xiàn),在Python文件里面也要寫東西的,我貼Python創(chuàng)建Silverlight控件的完整代碼了哦,app.py

 
 
 
  1. import clr   
  2. clr.AddReference("System.Windows.Controls.Extended")   
  3. from System.Windows import Application   
  4. from System.Windows.Controls import *   
  5. from System.Windows.Browser import *   
  6. class App:   
  7. def __init__(self):   
  8. self.scene = Application.Current.LoadRootVisual(Canvas(), "app.xaml")   
  9. def start(self):   
  10. # TODO: replace this with your application start logic   
  11. self.scene.TestButton.Click += self.TestButton_Click   
  12. def TestButton_Click(self, sender, eventArgs):   
  13. HtmlPage.Window.Alert(self.scene.TestCalendar.SelectedDate.ToString())   
  14. App().start() 

呵呵,看到?jīng)]有,最開始那兩句,它是起作用的關(guān)鍵。下面是app.xaml

 
 
 
  1. < Canvas xmlns="http://schemas.microsoft.com/client/2007"   
  2. xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" 
    xmlns:System_Windows_Controls_Extended="clr-namespace:
    System.Windows.Controls;assembly=System.Windows.Controls.Extended"   
  3. x:Class="System.Windows.Controls.Canvas" x:Name="Page" 
    Width="400" Height="300">   
  4. < System_Windows_Controls_Extended:Calendar 
    x:Name="TestCalendar" Canvas.Top="10" Canvas.Left="10"/>   
  5. < Button x:Name="TestButton" Canvas.Top="180" 
    Canvas.Left="10" Content="Test">< /Button>   
  6. < /Canvas> 

以上就是我們對Python創(chuàng)建Silverlight控件的相關(guān)介紹。


文章名稱:Python創(chuàng)建Silverlight控件編寫過程經(jīng)驗(yàn)分享
本文路徑:http://www.dlmjj.cn/article/dpghpec.html