超碰人人人人人,亚洲AV午夜福利精品一区二区,亚洲欧美综合区丁香五月1区,日韩欧美亚洲系列

LOGO OA教程 ERP教程 模切知識交流 PMS教程 CRM教程 開發(fā)文檔 其他文檔  
 
網(wǎng)站管理員

CPF:一個(gè)跨平臺(tái) UI 開發(fā)解決方案框架,支持 Windows、Mac、Linux 和 Android 等多個(gè)操作系統(tǒng)

admin
2025年1月23日 22:58 本文熱度 436

前言

創(chuàng)建一個(gè)能夠無縫運(yùn)行于多個(gè)操作系統(tǒng)的應(yīng)用程序是一個(gè)關(guān)鍵需求。為了滿足這一需求。

推薦一款全新的 C# 跨平臺(tái) UI 框架,提供強(qiáng)大的工具和支持,確保應(yīng)用程序在 Windows、Mac 和 Linux(包括國產(chǎn) Linux 發(fā)行版)上具有一致的運(yùn)行效果,并且能夠在 .NET Core 和 .NET Framework 4.0 環(huán)境下高效運(yùn)行,甚至支持 Windows XP。

項(xiàng)目介紹

簡潔、直觀、強(qiáng)悍的.NET 跨平臺(tái)UI開發(fā)框架。

框架理念和WPF類似,但是沒有Xaml,直接用CSS和C#代碼描述。

全面支持國產(chǎn)化,支持國產(chǎn)Linux + 龍芯、飛騰、兆芯、海光等CPU平臺(tái)。

項(xiàng)目特點(diǎn)

  • 全面跨平臺(tái)支持:基于 .NET Standard 2.0 和 .NET Framework 4.0,該框架通過 .NET Core 實(shí)現(xiàn)了真正的跨平臺(tái)兼容性,覆蓋 Windows、Mac 和 Linux(包括國產(chǎn) Linux 發(fā)行版),并且在各個(gè)平臺(tái)上提供一致的用戶體驗(yàn)。

  • 不依賴系統(tǒng)控件:所有控件完全由框架自定義實(shí)現(xiàn),確保在不同操作系統(tǒng)上的表現(xiàn)一致性,避免了因系統(tǒng)差異帶來的問題。

  • 高級視覺效果:支持窗體和控件的任意透明度設(shè)置、異形窗體設(shè)計(jì)以及 SVG 圖標(biāo)顯示,為應(yīng)用帶來現(xiàn)代感十足的視覺體驗(yàn)。

  • 豐富的交互功能:內(nèi)置動(dòng)畫支持、數(shù)據(jù)綁定機(jī)制、MVVM 模式、CSS 樣式等,簡化了依賴屬性和數(shù)據(jù)綁定的寫法,提供了靈活的數(shù)據(jù)上下文和命令上下文綁定方式。

  • 開發(fā)與調(diào)試工具:提供設(shè)計(jì)器生成 C# 代碼的功能,以及開發(fā)者工具用于查看和調(diào)試元素,極大地提高了開發(fā)效率。

  • 模板化設(shè)計(jì):秉承 WPF 的設(shè)計(jì)理念,任何控件都可以通過自定義模板來實(shí)現(xiàn)各種復(fù)雜效果,賦予開發(fā)者極大的靈活性。

  • 一次編寫,到處運(yùn)行:除了少量平臺(tái)特定 API 外,基本實(shí)現(xiàn)了代碼的完全復(fù)用,顯著減少了多平臺(tái)開發(fā)的工作量。

  • 全面支持國產(chǎn)化:特別優(yōu)化了對國產(chǎn) Linux 和多種國產(chǎn) CPU 平臺(tái)(如龍芯、飛騰、兆芯、海光等)的支持,幫助我們開發(fā)高性能的應(yīng)用程序。

架構(gòu)說明

CPF(Cross-Platform Framework)是一個(gè)旨在提供跨平臺(tái) UI 開發(fā)解決方案的框架,支持 Windows、Mac、Linux 和 Android 等多個(gè)操作系統(tǒng)。其核心設(shè)計(jì)理念是通過模塊化和適配器模式,確保應(yīng)用程序在不同平臺(tái)上具有一致的表現(xiàn)和性能。

主要組件

1、CPF

主要框架,提供了核心功能和基礎(chǔ)架構(gòu)。

2、CPF.Skia

使用 Skia 作為圖形引擎的適配層,確保高質(zhì)量的圖形渲染和一致的視覺效果。

3、平臺(tái)適配器

  • CPF.Windows:針對 Windows 平臺(tái)的適配器。

  • CPF.Linux:針對 Linux 平臺(tái)的適配器,包括對國產(chǎn) Linux 發(fā)行版的支持。

  • CPF.Mac:針對 macOS 平臺(tái)的適配器。

  • CPF.Android:針對 Android 平臺(tái)的適配器。

使用說明

直接克隆或下載項(xiàng)目即可編譯和運(yùn)行。為了快速了解運(yùn)行效果,可以直接啟動(dòng) ConsoleApp1 示例程序。

CPF使用文檔:http://cpf.cskin.net/Course/#/

擴(kuò)展庫

CEF 封裝:CPF.CEF 是對 CEF(Chromium Embedded Framework)的封裝,提供了一個(gè)跨平臺(tái)的瀏覽器控件,適用于需要嵌入網(wǎng)頁瀏覽功能的應(yīng)用。

VLC 封裝:CPF.VLC 是對 VLC 的封裝,提供了一個(gè)跨平臺(tái)的視頻播放控件,適用于需要多媒體播放功能的應(yīng)用。

關(guān)于設(shè)計(jì)器

設(shè)計(jì)師工具不開源,但提供了免費(fèi)試用版本。免費(fèi)模式下,用戶可以刷新和預(yù)覽設(shè)計(jì)效果,但不能進(jìn)行拖拽操作或?qū)彶樵?。VIP 用戶享有完整功能,包括拖拽和審查元素等高級功能,可免費(fèi)試用一個(gè)月。

其他說明

之前一直在糾結(jié)要不要開源,一個(gè)人太難搞了,歡迎大家一起壯大開源社區(qū)。

肯定有很多人會(huì)把CPF和Avalonia、Maui進(jìn)行對比,自己根據(jù)喜好和需求選擇吧,CPF是沒有Xaml,不排除將來可能會(huì)增加Xaml的功能。

CPF會(huì)盡量適配國內(nèi)系統(tǒng)和環(huán)境。

項(xiàng)目使用

C# 描述UI

public class Window1 : Window
{
    protected override void InitializeComponent()
    {
        LoadStyleFile("res://測試/Stylesheet1.css");
        Title = "標(biāo)題";
        Width = 500;
        Height = 400;
        Background = null;
        Children.Add(new WindowFrame(thisnew Panel
        {
            Width = "100%",
            Height = "100%",
            Children =
            {
                new StackPanel{
                    Size = SizeField.Fill,
                    Children = {
                        new Label{
                            Text = "標(biāo)簽",
                            Bindings = {
                                {nameof(Label.Text),nameof(MainModel.Test) },
                                //{ nameof(Label.Text), nameof(MainModel.Test), null, BindingMode.OneWay, (string a)=>a+"轉(zhuǎn)換器" }
                            },
                        },
                        new Button{
                            Content="按鈕",
                            Bindings = {
                                {nameof(Label.Text),nameof(MainModel.Test) }
                            },
                        }
                    },
                },
            }
        }));
    }
}

CSS描述樣式

需要注意的是這里只是用到CSS的格式,并不是兼容網(wǎng)頁的CSS

Button 
{
    BorderFill#DCDFE6;
    IsAntiAlias: True;
    CornerRadius4,4,4,4;
    Background#FFFFFF;
}

Button[IsMouseOver=true] 
{
    BorderFillrgb(198,226,255);
    Backgroundrgb(236,245,255);
    Foregroundrgb(64,158,255);
}

Button[IsPressed=true] 
{
    BorderFillrgb(58,142,230);
}

項(xiàng)目效果

當(dāng)前支持Windows(包括XP)、Mac、Linux(包括國產(chǎn)Linux+龍芯、飛騰、兆芯、海光等CPU平臺(tái)),提供設(shè)計(jì)器和元素查看的開發(fā)者工具。

項(xiàng)目文檔

CPF 從零入門文檔

CPF API 文檔

項(xiàng)目地址

GitHub:https://github.com/wsxhm/CPF

Gitee:https://gitee.com/csharpui/CPF

官網(wǎng):http://cpf.cskin.net/?

總結(jié)

以上僅展示了 CPF 的部分功能。更多實(shí)用特性和詳細(xì)信息,請大家訪問項(xiàng)目地址。

希望通過本文能為C#跨平臺(tái)、高性能UI 開發(fā)提供有價(jià)值的參考。


閱讀原文:原文鏈接


該文章在 2025/1/24 9:15:32 編輯過
關(guān)鍵字查詢
相關(guān)文章
正在查詢...
點(diǎn)晴ERP是一款針對中小制造業(yè)的專業(yè)生產(chǎn)管理軟件系統(tǒng),系統(tǒng)成熟度和易用性得到了國內(nèi)大量中小企業(yè)的青睞。
點(diǎn)晴PMS碼頭管理系統(tǒng)主要針對港口碼頭集裝箱與散貨日常運(yùn)作、調(diào)度、堆場、車隊(duì)、財(cái)務(wù)費(fèi)用、相關(guān)報(bào)表等業(yè)務(wù)管理,結(jié)合碼頭的業(yè)務(wù)特點(diǎn),圍繞調(diào)度、堆場作業(yè)而開發(fā)的。集技術(shù)的先進(jìn)性、管理的有效性于一體,是物流碼頭及其他港口類企業(yè)的高效ERP管理信息系統(tǒng)。
點(diǎn)晴WMS倉儲(chǔ)管理系統(tǒng)提供了貨物產(chǎn)品管理,銷售管理,采購管理,倉儲(chǔ)管理,倉庫管理,保質(zhì)期管理,貨位管理,庫位管理,生產(chǎn)管理,WMS管理系統(tǒng),標(biāo)簽打印,條形碼,二維碼管理,批號管理軟件。
點(diǎn)晴免費(fèi)OA是一款軟件和通用服務(wù)都免費(fèi),不限功能、不限時(shí)間、不限用戶的免費(fèi)OA協(xié)同辦公管理系統(tǒng)。
Copyright 2010-2025 ClickSun All Rights Reserved