中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Python中怎么創建一個Silverlight控件

發布時間:2021-07-05 16:41:30 來源:億速云 閱讀:166 作者:Leah 欄目:編程語言

這篇文章給大家介紹Python中怎么創建一個Silverlight控件,內容非常詳細,感興趣的小伙伴們可以參考借鑒,希望對大家能有所幫助。

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

from System.Windows import Application   from System.Windows.Controls import *   from System.Windows.Browser import *   class App:   def __init__(self):   self.scene = Application.Current.LoadRootVisual(Canvas(), "app.xaml")   def start(self):   self.scene.TestButton.Click += self.TestButton_Click   def TestButton_Click(self, sender, eventArgs):   self.scene.MsgText.Text = "Hello, world!"   App().start()

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

于是我就很激動,原來是這么好玩的啊,貌似Python創建Silverlight控件寫起來也很簡單的哇,那我來搞兩個復雜一點的控件。什么控件比較帥呢,我一想,日歷吧,這個東西好,那我就開始了,我加了一行

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

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

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

我要的可不是這個哦,切換到XAML欄,看到沒有,這行代碼:

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

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

import clr   clr.AddReference("System.Windows.Controls.Extended")   from System.Windows import Application   from System.Windows.Controls import *   from System.Windows.Browser import *   class App:   def __init__(self):   self.scene = Application.Current.LoadRootVisual(Canvas(), "app.xaml")   def start(self):   # TODO: replace this with your application start logic   self.scene.TestButton.Click += self.TestButton_Click   def TestButton_Click(self, sender, eventArgs):   HtmlPage.Window.Alert(self.scene.TestCalendar.SelectedDate.ToString())   App().start()

呵呵,看到沒有,最開始那兩句,它是起作用的關鍵。下面是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中怎么創建一個Silverlight控件就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

大新县| 江山市| 保靖县| 阿拉善左旗| 福州市| 娄底市| 茶陵县| 江山市| 资源县| 淮北市| 辽源市| 蒲城县| 楚雄市| 太和县| 天祝| 衡南县| 建湖县| 广灵县| 崇信县| 蒙阴县| 吉林市| 灌阳县| 五家渠市| 团风县| 若羌县| 沛县| 苍山县| 宝兴县| 油尖旺区| 康平县| 鸡东县| 温州市| 绩溪县| 莱州市| 保靖县| 松滋市| 威海市| 嵊州市| 大化| 开封市| 六枝特区|