位置:首頁(yè) > 軟件操作教程 > 編程開(kāi)發(fā) > C# > 問(wèn)題詳情

C# 路由命令

提問(wèn)人:劉團(tuán)圓發(fā)布時(shí)間:2020-12-08

    路由命令(routed co_and)的作用與事件相似,都是引起一些代碼開(kāi)始執(zhí)行。但事件只能直接與XAML中的單個(gè)元素和代碼中的一個(gè)處理程序綁定,路由命令則更復(fù)雜。


    事件和命令的關(guān)鍵差異主要在使用過(guò)程中體現(xiàn)出來(lái)。如果一段代碼響應(yīng)的是只在應(yīng)用程序中的一個(gè)位置發(fā)生的用戶操作,則應(yīng)該使用事件。例如,當(dāng)用戶單擊某個(gè)窗口中的0K按鈕以便保存并關(guān)閉該窗口時(shí),就使用此類事件。當(dāng)代碼響應(yīng)多個(gè)位置的操作時(shí),則應(yīng)該使用命令。例如,很多時(shí)候,既可以在菜單中選擇Save命令,也可以使用某個(gè)工具欄按鈕來(lái)保存應(yīng)用程序的內(nèi)容。這樣的需求實(shí)際上也可以使用事件處理程序來(lái)完成,但這意味著我們需要在許多地方編寫(xiě)相同的代碼;而使用命令,則只需要編寫(xiě)一次即可。


    在創(chuàng)建命令時(shí),還需要通過(guò)一些代碼來(lái)回答這樣一個(gè)問(wèn)題:“當(dāng)前是否允許用戶使用這段代碼?”也就是說(shuō),將一個(gè)命令與某個(gè)按鈕關(guān)聯(lián)起來(lái)時(shí),該按鈕可以詢問(wèn)這個(gè)命令能否執(zhí)行,并相應(yīng)地設(shè)置其狀態(tài)。

繼續(xù)查找其他問(wèn)題的答案?

相關(guān)視頻回答
回復(fù)(0)
返回頂部