本文為系列文章第六篇,介紹silverlight中的鍵盤處理事件,在silverlight 2中,支援keydown和keyup兩個事件。
所有的事件宣告過程都是一樣的,在xaml中或者是在**中進行註冊。
<或者在**中註冊:canvas x:
name
="layoutroot"
background
="#46461f">
<
ellipse x:
name
="ellipse"
width
="120"
height
="120"
fill
="orange"
canvas.top
="50"
canvas.left
="160"
stroke
="white"
strokethickness
="2"
keyup
="ellipse_keyup"
keydown
="ellipse_keydown"/>
canvas
>
public partial class使用事件引數可以獲取到事件資料,可以使用的屬性有key、platformkeycode、handled、source。page : usercontrol
private void ellipse_keyup(object sender, keyeventargs e)
private void ellipse_keydown(object sender, keyeventargs e)
}
private void ellipse_keyup(object sender, keyeventargs e)在事件資料中,handled有時候非常有用,可以用來判斷事件是否已經處理。else if(e.key == key.ctrl && e.key == key.u)
}
鍵盤事件keydown和keyup都支援路由事件,如下面的示例。
<為canvas註冊了乙個keyup事件,編寫事件處理程式。canvas x:
name
="layoutroot"
background
="#46461f"
keyup
="layoutroot_keyup">
<
textbox x:
name
="textbox"
width
="200"
height
="40"
canvas.top
="80"
canvas.left
="80"/>
<
button x:
name
="button"
width
="100"
height
="40"
canvas.top
="80"
canvas.left
="280"
background
="red"
margin
="20 0 0 0"
content
="submit"/>
<
textblock x:
name
="status"
foreground
="white"
text
="status"
canvas.left
="80"
canvas.top
="200"/>
canvas
>
private void layoutroot_keydown(object sender, keyeventargs e)執行程式,當文字框獲得焦點並輸入t時}
按鈕獲得焦點
關於鍵盤事件都簡單的介紹到這兒,希望對大家有用。
第06課 服務閘道器
在服務提供者的 module 下建立 hellocontroller 類,新增內容如下 restcontroller public class hellocontroller 然後分別啟動服務註冊中心和服務提供者,瀏覽器輸入 http localhost 8762 index,即可看見如下畫面 在實...
linux 處理鍵盤 滑鼠事件
linux下滑鼠和鍵盤的模擬控制,也就是為手勢和語音控制滑鼠和鍵盤部分服務的。有關於本系統構建的文章結構都會由三個部分來組織,一是該功能模組的介紹和在linux下簡單應用程式的實現 二是將該功能模組整合到互動系統 先以tld為地基 中去 三是分析目前存在的問題與未來的解決構思。一 input子系統和...
第 06 課 搭建本地 Mock 服務
前後端分離的協作模式下,前後端之間的資料傳輸都是基於 http 介面實現。顯然前端的開發是依賴後端介面實現的。在講求快速迭代的網際網路公司這種序列的等待肯定是不會出現的。前後端約定好介面的出參和入參之後,前端資料模擬 mock 就很有必要了。前端基於介面文件自己模擬乙份假資料作為前端的資料來源。後端...