CPF的設計器里帶界面代碼轉換功能,將運行中的Winform或者wpf的程序界面轉換為cpf代碼,主要轉換控件類型和布局,默認支持的是常用的原生控件。不支持Netcore,只支持.Netframework,wpf的只能是.net4.0和以上的
在設計界面的左邊的圈圈按鈕,點擊打開就是界面代碼轉換界面。使用的時候按住界面代碼轉換窗體上的圈圈按鈕,拖到你要轉換的程序的界面上,自動將程序的界面轉換為界面代碼,並在設計器上顯示。
WPF轉換效果
wpf程序運行界面
WPF設計界面
CPF轉換后的設計界面
CPF運行效果
WPF局部代碼轉換效果
將wpf里的Calendar進行局部控件轉換,轉換到的代碼在下面文本框里,復制文本框里的代碼,直接粘貼到CPF的Panel里
Winform效果
設計器和運行效果
CPF轉換后的效果
加上CSS后的效果
當然不能百分百轉換,只有UI代碼,沒有業務邏輯的,主要支持原生控件的常用控件,不能直接支持自定義控件。不過有提供簡單的自定義控件和CPF的控件映射,打開開發者工具的安裝目錄,里面的CodeConvert.txt打開,前面是自定義控件的類型名,后面是對應的CPF控件名,中間用|分割。另外對WPF自定義模板的轉換支持不夠,只能根據自己的需求進行局部轉換,把需要的模板轉換出來。
有了轉換好的UI代碼,你還需要改改,比如調整CSS和修改控件屬性等等,另外加上數據綁定和命令綁定,加上業務邏輯。
可能有人會問什么原理,其實就是程序注入,注入代碼到運行的Winform和wpf程序中,然后遍歷里面的控件,再把這些控件轉換為CPF代碼