WPF读取json文件,用到combox控件

通过JSON文件,读取相关的配置或者信息,并将数值传给相关控件,用于初始化

wpf 初始化 Loaded="Window_Loaded"

xml 复制代码
<Window x:Class="相机镜头选型.MainWindow" Loaded="Window_Loaded"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
        xmlns:lvc="clr-namespace:LiveCharts.Wpf;assembly=LiveCharts.Wpf"
        xmlns:svgc = "http://sharpvectors.codeplex.com/svgc/"
        xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
        xmlns:local="clr-namespace:相机镜头选型"
        mc:Ignorable="d"
        Title="相机镜头选型工具" Height="500" Width="1000"
       >

读取json 给到combox

包含两个文件:1.主文件(主题程序);2.初始化文件(初值加载)

1.主文件(主题程序)

c# 复制代码
 private void Window_Loaded(object sender, RoutedEventArgs e)
 {
     d1.Text = "2700";
     res_h.Text = "2046";
     vof_h.Text = "1000";
     res_w.Text = "1086";
     gq.Text = "2";
     size.Text = "0.00465";
     width.Text = "3800";
     length.Text = "12000";
     product.Text = "1000";
     speed.Text = "2000";
     cameranum.Text = "4";
     camera.SelectedIndex = 0;
     InitialValue InitV = new InitialValue();
     //List<ComboBoxItem> items = InitV.LoadData();
     camera.ItemsSource = InitV.LoadData();
     //foreach (var item in InitV.LoadData())
     //{
     //    Console.WriteLine($"DisplayText: {item.DisplayText}, Value1: {item.Value1}, Value2: {item.Value2}, Pixelsize: {item.Pixelsize}");
     //}
 }

2.初始化文件中的内容

c# 复制代码
        public List<ComboBoxItem> LoadData()
        {
            string jsonString = File.ReadAllText("D:\\02_Study\\06_WPF\\WpfApp1\\相机镜头选型\\Asset\\config.json");

            // 解析 JSON 字符串到对象
            List<ComboBoxItem> items = JsonConvert.DeserializeObject<List<ComboBoxItem>>(jsonString);

            // 使用 items 对象
            foreach (var item in items)
            {
                Console.WriteLine($"DisplayText: {item.DisplayText}, Value1: {item.Value1}, Value2: {item.Value2}, Pixelsize: {item.Pixelsize}");
            }
            return items;
        }

需要解析的json文件

json 复制代码
[
    {
        "DisplayText": "Basler ace Classic acA2000-340km 200万",
        "Value1": 2048,
        "Value2": 1088,
        "Pixelsize": 0.0055
    }
 ]
相关推荐
界面开发小八哥3 分钟前
界面控件DevExpress WPF v26.1新版亮点 - 模板工具包 & MVVM功能全新升级
wpf·界面控件·devexpress·ui开发·.net 10
庖丁AI2 小时前
PDF 表格提取到 CSV 和 JSON 怎么做?复杂版式要先解决结构化解析
pdf·json
CedarQR19 小时前
VS Code Copilot Chat 配置 MCP Server 全攻略(以 Next AI Draw.io 为例)
人工智能·ui·json
肖志-AI全栈19 小时前
从零讲透 Ajax:XHR、Fetch、JSON 序列化到异步编程全链路
前端·ajax·json
前端Baymax1 天前
JSON配置文件的UTF-8 BOM编码陷阱
json
记忆停留w2 天前
Celery+Redis 分布式异步任务队列工程落地业务逻辑
大数据·人工智能·redis·分布式·缓存·架构·wpf
雪靡2 天前
WPF PerMonitorV2 下的跨窗口问题
c#·wpf
listening7773 天前
HarmonyOS 6.1 分布式文件服务实战:跨设备商品图片/视频秒开方案
wpf·harmonyos
Macbethad3 天前
基于WPF的半导体设备EAP控制程序架构设计与实现
wpf
东方-教育技术博主4 天前
论文全文翻译_通过VR课堂适应性反馈提升职前教师注意能力
json·vr