2008-12-08 38 views
0

爲了讓自己更多地瞭解WPF,我試圖構建一個簡單的應用程序。在我工作的地方,我們有一些硬件具有一組8位DIP開關,用於設置地址從0到255(作爲8位數字)。這是一個簡單的概念,我想建立一個WPF窗口應用程序,允許用戶查看給定地址的DIP開關設置。我在WinForms中構建了一個類似的應用程序,只需顯示/隱藏dip開關的圖片。我想將它移植到WPF並做更優雅的事情。在WPF中創建DIP開關控件

我用字符串和數字做了一些簡單的數據綁定,使它們顯示在標籤中,並且我已經完成了一些用戶控件的介紹性工作。

我想要做的是創建一個模擬單個dip開關的用戶控件,該開關將具有布爾型true或false的「State」屬性。然後,我可以將其中的8個放在我的窗口中,並將它們與我的代碼綁定。

在XAML中,我將繪製一個dip開關,滑動部件將根據State屬性的真/假值移動到開或關位置。一旦我弄清楚了,也許我可以稍後再製作它。

在這一點上,我正在尋找一個概念性概述......我將如何在用戶控件中創建此屬性,並讓它的值影響圖形開關的位置?

謝謝。

回答

0

可以這樣做的一種方法是使用控制模板來自定義WPF RadioButton類的外觀。 RadioButton控制模板的代碼是available on msdn

您應該可以創建自己的UserControl,然後將此代碼粘貼到UserControl.Resources節點,然後開始修改RadioButton的外觀,同時保留它的所有屬性,這將使其易於使用作爲布爾指標。

「子彈」的風格可以很容易地被翻轉或不翻轉的撥碼開關的圖像或矢量圖形所取代。