# GiantappConfiger **Repository Path**: GiantappMan/GiantappConfiger ## Basic Information - **Project Name**: GiantappConfiger - **Description**: 一个懒人用的带界面的配置读写器 - **Primary Language**: Unknown - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2019-09-04 - **Last Updated**: 2020-12-19 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # GiantappConfiger 懒人专用配置界面生成器,根据传入对象自动生成UI界面 只支持WPF。UWP等微软Net5出了再看 # 支持功能 - [x] 给任意对象,自动生成配置UI - [x] 多语言 - [x] 外部文件描述 # 用法 //.xaml ```xaml ``` //描述文件格式,可不填 ```csharp var descriptor = new DescriptorInfoDict() { {"TestSetting", new DescriptorInfo(){ Text = "node 0", PropertyDescriptors = new DescriptorInfoDict() { {"P1", new DescriptorInfo(){ Text="int property"} }, {"P2", new DescriptorInfo(){ Text="string property",DefaultValue="xxx"} }, {"SubSetting", new DescriptorInfo(){ Text="string property",DefaultValue=new SubSetting(), PropertyDescriptors=new DescriptorInfoDict() { {"SP1", new DescriptorInfo(){ Text="sub int property"} }, {"SP2", new DescriptorInfo(){ Text="sub string property",DefaultValue="ooo"} } }} }, } }} }; ``` //.cs 获取vm, descriptor可传null ```csharp var tmp = new TestSetting() { Str1 = "6", }; var vm = ConfigerService.GetVM(tmp, descriptor); configer.DataContext = vm; //UI操作后,获取数据 tmp = ConfigerService.GetData(vm.Nodes); ```