使用 c# 开发程序中我们没可以直接使用的 json解析类库 这个时候我们可以通过 NuGet 安装使用 Newtonsoft.Json 类库来对 json 进行解析处理。安装 Newtonsoft.Json 我们可以通过 ide 菜单 工具->NuGet包管理 里面下载引入。引用 Newtonsoft.Json 在使用到的类文件里面引入 Newtonsoft.Jsonusing Newtonsoft.Json; using Newtonsoft.Json.Linq; 使用 Newtonsoft.Jsonstring json = "{}"; dynamic result = JObject.Parse(json); Console.WriteLine(result.xxx);这个时候如果报 Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfo.Create 这个错误稳住不要急,下面就是解决方案。在项目中引入Microsoft.Csharp即可解决。 我们可以直接使用解析后的json字符串调用对象使用。 关于 c# 使用 ...
我们以 ComboBox控件 为例 来测试使用通过绑定 控件数据源 来对接 接口数据源 进行数据输出使用展示。绑定接口输出为数据源假设我们通过接口获取到一下json数据对象[ { "id":1, "name":"李元芳" }, { "id":2, "name":"莉莉2" }, { "id":3, "name":"赵先生" } ]把 数据对象 绑定到 DataSource 上 myDataTable 为json对象comboBox.DataSource = myDataTable;最后我们设置一下对应数据字段即可//这个DataTable是你从数据库拿出来的包括ID和值 或者是json解析后的 comboBox.ValueMember = "ID";//这对应你的字段名 comboBox.DisplayMember = "Name";//对应你的字段名用户选择后,你可以通过这个语句,拿到ID的值 string myID=com...
下面通过使用 EventHandler 和 MethodInvoker 两种方式实现c#多线程或者线程池在子线程中调用其他窗体的控件两种委托方式。MethodInvoker 委托方式 MethodInvoker 表示一个委托,该委托可以执行托管代码中声明为 void 且 不接受任何参数 的任何方法。 在对控件的 invoke 方法进行调用时或需要一个 简单委托 又不想自己定义时可以使用该委托。MethodInvoker 委托方式使用示例MethodInvoker methodInvoker; methodInvoker=new MethodInvoker(自定义方法()) Views.Purcuase.Bill.bill.BeginInvoke(methodInvoker) //要委托给哪个窗体 EventHandler 委托方式 EventHandler 和 MethodInvoker 差不多最直观的不同就是 EventHandler 可以 传递参数 在 子线程 中直接使用。EventHandler 委托方式使用示例 // 可以直接在线程方法中使用 Views.Purcu...
我们在创建使用 自定义winform用户控件 的时候往往程序默认属性是 不满足我们的需求 的,这个时候就需要我们自定义我们需要的控件属性来满足业务需求也就是 自定义控件属性 ,下面将实现c#实现 自定义控件属性 方法。首先添加自定义控件 按照以下步骤创建测试 自定义用户控件 以便测试 自定义控件属性 使用。右键点击项目选择用户控件点击用户控件添加用户控件然后跳转到自定义控件代码部分 创建完 自定义用户控件 后我们可以跳转到控件代码部分。可以通过在窗体上选择控件右键查看代码也可以通过使用快捷键 F7 查看代码添加自定义用户控件属性 添加自定义用户控件属性可以通过一下两种方式去实现。通过自定义类属性来添加自定义用户控件属性通过代码定义自定义代码方法去实现。通过自定义类属性来添加自定义用户控件属性 很简单 如下图所示 我们可以像平时 定义类属性 一样去定义自定义用户控件属性,ide会 自动识别 我们定义的属性。 下面我们测试 自定义用户控件text属性。private string text; public string Text{get=>text,set=>text=value;...
因为业务要求现在我们需要将 DataGridView 控件默认点击 列标题排序功能禁用 掉,下面我们将讲解下怎么实现禁用 DataGridView 点击列标题排序。如何禁止DataGridView点击列标题后排序 以前 DataGrid 有一个 AllowSorting 这个属性可以禁止但是 DataGridView 没有 AllowSorting 这个属性。 我查 MSDN 的结果是必须对每个列单独设置,不能整体设为不可排序。实现禁用DataGridView点击列标题排序 DataGridView 中的 Columns 属性里面可以设置。 进入 Edit Columns 窗口后,在相应的列属性设置里面把 SortMode 属性选择为 NotSortable 就可以了是不是很简单。 关于如何禁止 DataGridView 点击列标题后排序以及 解决方案 已经实现了。