2013年5月13日 星期一

[秘技] 實作Converter (繼承自IValueConverter)

其實只是要秀一下我發現的一個秘技。為何Data Binding時需要Converter,如何實作Converter,如何Binding的方式教科書已經說的太多,只是我實作程式碼時常想,同樣的工作同樣的程式碼為何要一再重覆的coding。教科書沒教我們的Implement Converter技法其實很簡單。

當你把Cursor設定在IValueConverter上時有沒有覺得有一個怪怪的小藍色底線看了很不舒服很想把他消除:

valueconvert_1

把滑鼠移動過去會變成一個可以按的小按鈕

valueconvert_2

選擇Implement與Explicitly implement有什麼不同我還不曉得,不過按了之後的結果是一樣的,Convert與ConvertBack都implement好了(雖然都是throw NotImplementedException):

valueconvert_4

剩下的工作就是自已實作要如何convert而已。

從滑鼠移到小藍點到變成按鈕要花點時間,如果不想等,可以直接對IValueConvert按右鍵,也有Implement Interface的選項可選:

valueconvert_3

這個秘技似乎只有新建的class可以用,如果已經有Implement過Convert與ConvertBack後,Implement Interface的選單會自然的消失。

沒有留言:

張貼留言