一個基于.Net 開源的C/S控件庫。這是一個專為 .NET WinForms 平臺設計的開源 C/S(客戶端/服務器)架構控件庫,致力于為開發(fā)者提供一套現(xiàn)代化、高可定制的桌面應用程序界面組件。該控件庫對 Windows Forms 原生控件進行了深度重繪和功能擴展,在保持原有控件操作習慣的基礎上,提供了更美觀的界面設計和更豐富的交互功能。這個開源控件庫為需要現(xiàn)代化 WinForms 界面的開發(fā)者提供了一個完整的解決方案,既保留了 WinForms 的開發(fā)效率,又賦予了應用程序現(xiàn)代化的外觀和交互體驗。
- 全面控件重繪
- 對 Button、TextBox、ComboBox、ListBox、CheckBox、RadioButton 等基礎控件進行視覺重構
- 引入扁平化設計風格,支持圓角、陰影、透明度等現(xiàn)代 UI 特性
- 自定義繪制引擎,實現(xiàn)抗鋸齒渲染和高清 DPI 支持
- 豐富的控件集合
- 新增 DataGridView 增強版(支持卡片視圖、分組、凍結行列等)
- 提供專業(yè)級導航控件(Outlook 風格導航欄、Ribbon 工具欄)
- 主題與樣式系統(tǒng)
- 內置多種預設主題(深色/淺色模式、Office 風格、Material Design 等)
- 提供完整的樣式自定義接口(顏色、字體、邊框、動畫等)
- 高級功能擴展
- 控件動畫效果(懸停、點擊、加載等狀態(tài)動畫)
- 數(shù)據(jù)綁定增強(支持雙向綁定、異步加載)
- 觸摸屏優(yōu)化(手勢支持、大點擊區(qū)域)
- 純 C# 實現(xiàn):100% 托管代碼,無需依賴原生 DLL
- 高性能渲染:使用雙緩沖和圖形路徑優(yōu)化繪制性能
- 無侵入設計:可與現(xiàn)有 WinForms 項目無縫集成
- 完整文檔:包含示例項目和 API 文檔
1.重繪Datagridview

datagridview 篩選

2.帶Lable 按鈕的輸入框
3.GDI繪制的按鈕
4.繼承Control 繪制的按鈕
5.原點進度條
6.動態(tài)配置文件
WenSkin.WenConfig wenConfig = new WenSkin.WenConfig();
WenSkin.WenConfig wenConfigjson = new WenSkin.WenConfig(WenSkin.WenConfig.ConfigFormatEnum.Json);
var uid = wenConfig["SqlServer", "Uid"];
wenConfig["SqlServer", "Uid"] = "wen";
wenConfig.Show();
自動配置文件,生成設置窗口,并支持xml和json格式,自動序列化
6.動態(tài)生成窗口,綁定datarow數(shù)據(jù),并自動生成插入數(shù)據(jù)庫語句和更新語句。
private void wenImageButton1_Click(object sender, EventArgs e)
{
DataTable dt = new DataTable();
dt.Columns.Add("A");
dt.Columns.Add("B");
dt.Columns.Add("C");
dt.Rows.Add(001, "001", "");
dt.Rows.Add(002, "002", "001");
dt.Rows.Add(002, "001", "");
dt.Rows.Add(003, "004", "002");
dt.Rows.Add(004, "002", "001");
dt.Rows.Add(005, "002", "001");
wenDataTextBox1.DataSource = dt.Rows[1];
}
private void wenButton2_Click(object sender, EventArgs e)
{
var insert = wenDataTextBox1.InsertSqlString;
var update = wenDataTextBox1.UpdateSqlString;
this.MsgBoxInformation($"{ insert}\r\n\r\n{update}");
}

7.log顯示框
8.分頁控件自動分割DataTable 數(shù)據(jù)

9.模板listbox 可以直接綁定模板的listbox
?wenListBoxControl1.Template = typeof(WenGroupBox);
wenListBoxControl1.Items.Add(new WenListBoxControl.WenListBoxControlItem());
wenListBoxControl1.Items.Add("測試");
wenListBoxControl1.Template = typeof(WenButton);
wenListBoxControl1.Items.Add("測試按鈕模板");
10.ini文件解析和自動設置功能
var ini = new Ini("test.ini");
ini["Test1"] = "Value1";
ini["Group2", "Test2"] = "Value2";
var test1 = ini["test1"];
var test2 = ini["group2", "test2"];
ini.AddItem("group", "name", "value");
ini.AddRemark("group", "remark");
ini.Show();
PS:僅供學習,侵權立刪。
閱讀原文:原文鏈接
該文章在 2025/6/17 12:14:23 編輯過