admin
2020-06-12 109d30c2eb833492ed11616227f150fcc8a6e2b9
'登录完善'
14个文件已添加
513 ■■■■■ 已修改文件
WindowsFormsApp1/entity/FirstOrderSubInfo.cs 80 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WindowsFormsApp1/entity/SearchInfo.cs 116 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WindowsFormsApp1/publish/Application Files/WindowsFormsApp1_1_0_0_2/EntityFramework.SqlServer.dll.deploy 补丁 | 查看 | 原始文档 | blame | 历史
WindowsFormsApp1/publish/Application Files/WindowsFormsApp1_1_0_0_2/EntityFramework.dll.deploy 补丁 | 查看 | 原始文档 | blame | 历史
WindowsFormsApp1/publish/Application Files/WindowsFormsApp1_1_0_0_2/HZH_Controls.dll.deploy 补丁 | 查看 | 原始文档 | blame | 历史
WindowsFormsApp1/publish/Application Files/WindowsFormsApp1_1_0_0_2/Newtonsoft.Json.dll.deploy 补丁 | 查看 | 原始文档 | blame | 历史
WindowsFormsApp1/publish/Application Files/WindowsFormsApp1_1_0_0_2/System.Data.SQLite.EF6.dll.deploy 补丁 | 查看 | 原始文档 | blame | 历史
WindowsFormsApp1/publish/Application Files/WindowsFormsApp1_1_0_0_2/System.Data.SQLite.Linq.dll.deploy 补丁 | 查看 | 原始文档 | blame | 历史
WindowsFormsApp1/publish/Application Files/WindowsFormsApp1_1_0_0_2/System.Data.SQLite.dll.deploy 补丁 | 查看 | 原始文档 | blame | 历史
WindowsFormsApp1/publish/Application Files/WindowsFormsApp1_1_0_0_2/WindowsFormsApp1.application 21 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WindowsFormsApp1/publish/Application Files/WindowsFormsApp1_1_0_0_2/WindowsFormsApp1.exe.config.deploy 22 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WindowsFormsApp1/publish/Application Files/WindowsFormsApp1_1_0_0_2/WindowsFormsApp1.exe.deploy 补丁 | 查看 | 原始文档 | blame | 历史
WindowsFormsApp1/publish/Application Files/WindowsFormsApp1_1_0_0_2/WindowsFormsApp1.exe.manifest 149 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WindowsFormsApp1/utils/ui/DataGridViewHelper.cs 125 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WindowsFormsApp1/entity/FirstOrderSubInfo.cs
New file
@@ -0,0 +1,80 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace WindowsFormsApp1.entity
{
    class FirstOrderSubInfo
    {
        //标题
        public String title
        {
            get { return title; }
            set { title = value; }
        }
        public String zkPrice
        {
            get { return zkPrice; }
            set { zkPrice = value; }
        }
        public String couponPrice
        {
            get { return couponPrice; }
            set { couponPrice = value; }
        }
        public String lijinAmount
        {
            get { return lijinAmount; }
            set { lijinAmount = value; }
        }
        public String goodsId
        {
            get { return goodsId; }
            set { goodsId = value; }
        }
        public String actualPrice
        {
            get { return actualPrice; }
            set { actualPrice = value; }
        }
        public String commission
        {
            get { return commission; }
            set { commission = value; }
        }
        public String commissionRate
        {
            get { return commissionRate; }
            set { commissionRate = value; }
        }
        public List<String> imgList
        {
            get { return imgList; }
            set { imgList = value; }
        }
        public Boolean mark
        {
            get { return mark; }
            set { mark = value; }
        }
    }
}
WindowsFormsApp1/entity/SearchInfo.cs
New file
@@ -0,0 +1,116 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace WindowsFormsApp1.entity
{
    class SearchInfo
    {
        public static int COUPON_TYPE_ALL=0;
        public static int COUPON_TYPE_HAVE = 1;
        public static int COUPON_TYPE_NO = 2;
        public static int SHOP_TYPE_ALL = 0;
        public static int SHOP_TYPE_TM = 1;
        public static int SHOP_TYPE_TAOBAO = 2;
        //关键字
        public String key
        {
            get { return key; }
            set { key = value; }
        }
        public int couponType {
            get { return couponType; }
            set { couponType = value; }
        }
        public int shopType
        {
            get { return shopType; }
            set { shopType = value; }
        }
        //券后价
        public String minCouponPrice {
            get { return minCouponPrice; }
            set { minCouponPrice = value; }
        }
        public String maxCouponPrice
        {
            get { return maxCouponPrice; }
            set { maxCouponPrice = value; }
        }
        //礼金
        public String minLiJin
        {
            get { return minLiJin; }
            set { minLiJin = value; }
        }
        public String maxLiJin
        {
            get { return maxLiJin; }
            set { maxLiJin = value; }
        }
        //到手价
        public String minActualPrice
        {
            get { return minActualPrice; }
            set { minActualPrice = value; }
        }
        public String maxActualPrice
        {
            get { return maxActualPrice; }
            set { maxActualPrice = value; }
        }
        //月销
        public String minSalesNum
        {
            get { return minSalesNum; }
            set { minSalesNum = value; }
        }
        public String maxSalesNum
        {
            get { return maxSalesNum; }
            set { maxSalesNum = value; }
        }
        //佣金
        public String minCommission
        {
            get { return minCommission; }
            set { minCommission = value; }
        }
        public String maxCommission
        {
            get { return maxCommission; }
            set { maxCommission = value; }
        }
        //佣金比例
        public String minCommissionRate
        {
            get { return minCommissionRate; }
            set { minCommissionRate = value; }
        }
        public String maxCommissionRate
        {
            get { return maxCommissionRate; }
            set { maxCommissionRate = value; }
        }
    }
}
WindowsFormsApp1/publish/Application Files/WindowsFormsApp1_1_0_0_2/EntityFramework.SqlServer.dll.deploy
Binary files differ
WindowsFormsApp1/publish/Application Files/WindowsFormsApp1_1_0_0_2/EntityFramework.dll.deploy
Binary files differ
WindowsFormsApp1/publish/Application Files/WindowsFormsApp1_1_0_0_2/HZH_Controls.dll.deploy
Binary files differ
WindowsFormsApp1/publish/Application Files/WindowsFormsApp1_1_0_0_2/Newtonsoft.Json.dll.deploy
Binary files differ
WindowsFormsApp1/publish/Application Files/WindowsFormsApp1_1_0_0_2/System.Data.SQLite.EF6.dll.deploy
Binary files differ
WindowsFormsApp1/publish/Application Files/WindowsFormsApp1_1_0_0_2/System.Data.SQLite.Linq.dll.deploy
Binary files differ
WindowsFormsApp1/publish/Application Files/WindowsFormsApp1_1_0_0_2/System.Data.SQLite.dll.deploy
Binary files differ
WindowsFormsApp1/publish/Application Files/WindowsFormsApp1_1_0_0_2/WindowsFormsApp1.application
New file
@@ -0,0 +1,21 @@
<?xml version="1.0" encoding="utf-8"?>
<asmv1:assembly xsi:schemaLocation="urn:schemas-microsoft-com:asm.v1 assembly.adaptive.xsd" manifestVersion="1.0" xmlns:asmv1="urn:schemas-microsoft-com:asm.v1" xmlns="urn:schemas-microsoft-com:asm.v2" xmlns:asmv2="urn:schemas-microsoft-com:asm.v2" xmlns:xrml="urn:mpeg:mpeg21:2003:01-REL-R-NS" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:asmv3="urn:schemas-microsoft-com:asm.v3" xmlns:dsig="http://www.w3.org/2000/09/xmldsig#" xmlns:co.v1="urn:schemas-microsoft-com:clickonce.v1" xmlns:co.v2="urn:schemas-microsoft-com:clickonce.v2">
  <assemblyIdentity name="WindowsFormsApp1.application" version="1.0.0.2" publicKeyToken="118fa79ef8c23156" language="neutral" processorArchitecture="x86" xmlns="urn:schemas-microsoft-com:asm.v1" />
  <description asmv2:publisher="WindowsFormsApp1" asmv2:product="WindowsFormsApp1" xmlns="urn:schemas-microsoft-com:asm.v1" />
  <deployment install="true" mapFileExtensions="true" />
  <compatibleFrameworks xmlns="urn:schemas-microsoft-com:clickonce.v2">
    <framework targetVersion="4.7.2" profile="Full" supportedRuntime="4.0.30319" />
  </compatibleFrameworks>
  <dependency>
    <dependentAssembly dependencyType="install" codebase="Application Files\WindowsFormsApp1_1_0_0_2\WindowsFormsApp1.exe.manifest" size="11963">
      <assemblyIdentity name="WindowsFormsApp1.exe" version="1.0.0.2" publicKeyToken="118fa79ef8c23156" language="neutral" processorArchitecture="x86" type="win32" />
      <hash>
        <dsig:Transforms>
          <dsig:Transform Algorithm="urn:schemas-microsoft-com:HashTransforms.Identity" />
        </dsig:Transforms>
        <dsig:DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha256" />
        <dsig:DigestValue>pYb/u49KCIeiO5vLdYRWaEVDN7cxxCWxBdpI/4YpHco=</dsig:DigestValue>
      </hash>
    </dependentAssembly>
  </dependency>
<publisherIdentity name="CN=S0ZHK00LKCA6OYY\Administrator" issuerKeyHash="2b35ac65eddb83391791d6519cce0b3bcbb1a5a0" /><Signature Id="StrongNameSignature" xmlns="http://www.w3.org/2000/09/xmldsig#"><SignedInfo><CanonicalizationMethod Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#" /><SignatureMethod Algorithm="http://www.w3.org/2000/09/xmldsig#rsa-sha256" /><Reference URI=""><Transforms><Transform Algorithm="http://www.w3.org/2000/09/xmldsig#enveloped-signature" /><Transform Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#" /></Transforms><DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha256" /><DigestValue>5+t67dwcm47Yo9dR2QWdRjD5D+lByDqOLYc4Kjp60C4=</DigestValue></Reference></SignedInfo><SignatureValue>lYppM/OSAc17TpjRmYwLYfsWXfGshKVt3jeg6ZRMRxYS8hk5pH9wWykV5fpINWk88xwHJw2Qdwi5bOYUrcvxPx1DjoaBMn2ukaS0i5t6V6Q0VZreEk4JDHZfP1uAT1eJnDHRIlSVDH16NwHejgUw1IRW6uRyrmgAtHOqXK+z2M4=</SignatureValue><KeyInfo Id="StrongNameKeyInfo"><KeyValue><RSAKeyValue><Modulus>zRGyOs4i5QGBy1PBet3ouUppTp5LaOpmGjsC9lgzq/RD8sGdLR17GwSbzzDupGrIaVyzScYcyzdZDIoYB6nFBaIfI7f6eKqqqp9fhDNTZlAhUIEZi9HsT/efK3dphdQpq7gYGtl0XBl/7aTta89qiNuY1Pq0DfOrMZf8csb+iR0=</Modulus><Exponent>AQAB</Exponent></RSAKeyValue></KeyValue><msrel:RelData xmlns:msrel="http://schemas.microsoft.com/windows/rel/2005/reldata"><r:license xmlns:r="urn:mpeg:mpeg21:2003:01-REL-R-NS" xmlns:as="http://schemas.microsoft.com/windows/pki/2005/Authenticode"><r:grant><as:ManifestInformation Hash="2ed07a3a2a38872d8e3ac841e90ff930469d05d951d7a3d88e9b1cdced7aebe7" Description="" Url=""><as:assemblyIdentity name="WindowsFormsApp1.application" version="1.0.0.2" publicKeyToken="118fa79ef8c23156" language="neutral" processorArchitecture="x86" xmlns="urn:schemas-microsoft-com:asm.v1" /></as:ManifestInformation><as:SignedBy /><as:AuthenticodePublisher><as:X509SubjectName>CN=S0ZHK00LKCA6OYY\Administrator</as:X509SubjectName></as:AuthenticodePublisher></r:grant><r:issuer><Signature Id="AuthenticodeSignature" xmlns="http://www.w3.org/2000/09/xmldsig#"><SignedInfo><CanonicalizationMethod Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#" /><SignatureMethod Algorithm="http://www.w3.org/2000/09/xmldsig#rsa-sha256" /><Reference URI=""><Transforms><Transform Algorithm="http://www.w3.org/2000/09/xmldsig#enveloped-signature" /><Transform Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#" /></Transforms><DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha256" /><DigestValue>/41eIXRkbbmBOPTm9taKG/LEfevFdxuWWug7X0mPdgc=</DigestValue></Reference></SignedInfo><SignatureValue>CFj7vN0yzmxfTr0DH5QfYFnTAB1pjHrKYla5zvM1dGsv4aN/g6xk8U0gTLS+T844c5gUvN7PLmGxheo7L07+JYjUeVdbDcaBw6buPHDQ8R/l1BRR97Kxa75w7+SZM/Qwm1Q/s7/BlbW9HK1iK1utBLedo6njwxow7H2yZpcIuEw=</SignatureValue><KeyInfo><KeyValue><RSAKeyValue><Modulus>zRGyOs4i5QGBy1PBet3ouUppTp5LaOpmGjsC9lgzq/RD8sGdLR17GwSbzzDupGrIaVyzScYcyzdZDIoYB6nFBaIfI7f6eKqqqp9fhDNTZlAhUIEZi9HsT/efK3dphdQpq7gYGtl0XBl/7aTta89qiNuY1Pq0DfOrMZf8csb+iR0=</Modulus><Exponent>AQAB</Exponent></RSAKeyValue></KeyValue><X509Data><X509Certificate>MIICDTCCAXagAwIBAgIQG6fZwvDyLo5L65ocXk2mdjANBgkqhkiG9w0BAQsFADBFMUMwQQYDVQQDHjoAUwAwAFoASABLADAAMABMAEsAQwBBADYATwBZAFkAXABBAGQAbQBpAG4AaQBzAHQAcgBhAHQAbwByMB4XDTIwMDYwNTAyMzAzMVoXDTIxMDYwNTA4MzAzMVowRTFDMEEGA1UEAx46AFMAMABaAEgASwAwADAATABLAEMAQQA2AE8AWQBZAFwAQQBkAG0AaQBuAGkAcwB0AHIAYQB0AG8AcjCBnzANBgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEAzRGyOs4i5QGBy1PBet3ouUppTp5LaOpmGjsC9lgzq/RD8sGdLR17GwSbzzDupGrIaVyzScYcyzdZDIoYB6nFBaIfI7f6eKqqqp9fhDNTZlAhUIEZi9HsT/efK3dphdQpq7gYGtl0XBl/7aTta89qiNuY1Pq0DfOrMZf8csb+iR0CAwEAATANBgkqhkiG9w0BAQsFAAOBgQC+YbNeNS0aPE/Ig4elNsTGF0aY8XXJg4jViW+zSaMkogJpgvMlmtu9w/WKK9+0tIOby3ZXmPSjPxMCnqdzuvYklOUNc+/gazQE/YGg1eAFADDx1bI07zX6xSowOBvgNAO3PBnj8s+Dfjzf9+4ZCke8bzU9onTlgscMqdSXnfh6zw==</X509Certificate></X509Data></KeyInfo></Signature></r:issuer></r:license></msrel:RelData></KeyInfo></Signature></asmv1:assembly>
WindowsFormsApp1/publish/Application Files/WindowsFormsApp1_1_0_0_2/WindowsFormsApp1.exe.config.deploy
New file
@@ -0,0 +1,22 @@
<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <configSections>
    <!-- For more information on Entity Framework configuration, visit http://go.microsoft.com/fwlink/?LinkID=237468 -->
    <section name="entityFramework" type="System.Data.Entity.Internal.ConfigFile.EntityFrameworkSection, EntityFramework, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false" />
  </configSections>
  <startup>
    <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.7.2" />
  </startup>
  <entityFramework>
    <providers>
      <provider invariantName="System.Data.SqlClient" type="System.Data.Entity.SqlServer.SqlProviderServices, EntityFramework.SqlServer" />
      <provider invariantName="System.Data.SQLite.EF6" type="System.Data.SQLite.EF6.SQLiteProviderServices, System.Data.SQLite.EF6" />
    </providers>
  </entityFramework>
  <system.data>
    <DbProviderFactories>
      <remove invariant="System.Data.SQLite.EF6" />
      <add name="SQLite Data Provider (Entity Framework 6)" invariant="System.Data.SQLite.EF6" description=".NET Framework Data Provider for SQLite (Entity Framework 6)" type="System.Data.SQLite.EF6.SQLiteProviderFactory, System.Data.SQLite.EF6" />
    <remove invariant="System.Data.SQLite" /><add name="SQLite Data Provider" invariant="System.Data.SQLite" description=".NET Framework Data Provider for SQLite" type="System.Data.SQLite.SQLiteFactory, System.Data.SQLite" /></DbProviderFactories>
  </system.data>
</configuration>
WindowsFormsApp1/publish/Application Files/WindowsFormsApp1_1_0_0_2/WindowsFormsApp1.exe.deploy
Binary files differ
WindowsFormsApp1/publish/Application Files/WindowsFormsApp1_1_0_0_2/WindowsFormsApp1.exe.manifest
New file
@@ -0,0 +1,149 @@
<?xml version="1.0" encoding="utf-8"?>
<asmv1:assembly xsi:schemaLocation="urn:schemas-microsoft-com:asm.v1 assembly.adaptive.xsd" manifestVersion="1.0" xmlns:asmv1="urn:schemas-microsoft-com:asm.v1" xmlns="urn:schemas-microsoft-com:asm.v2" xmlns:asmv2="urn:schemas-microsoft-com:asm.v2" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:co.v1="urn:schemas-microsoft-com:clickonce.v1" xmlns:asmv3="urn:schemas-microsoft-com:asm.v3" xmlns:dsig="http://www.w3.org/2000/09/xmldsig#" xmlns:co.v2="urn:schemas-microsoft-com:clickonce.v2">
  <asmv1:assemblyIdentity name="WindowsFormsApp1.exe" version="1.0.0.2" publicKeyToken="118fa79ef8c23156" language="neutral" processorArchitecture="x86" type="win32" />
  <application />
  <entryPoint>
    <assemblyIdentity name="WindowsFormsApp1" version="1.0.0.0" language="neutral" processorArchitecture="x86" />
    <commandLine file="WindowsFormsApp1.exe" parameters="" />
  </entryPoint>
  <trustInfo>
    <security>
      <applicationRequestMinimum>
        <PermissionSet Unrestricted="true" ID="Custom" SameSite="site" />
        <defaultAssemblyRequest permissionSetReference="Custom" />
      </applicationRequestMinimum>
      <requestedPrivileges xmlns="urn:schemas-microsoft-com:asm.v3">
        <!--
          UAC 清单选项
          如果要更改 Windows 用户帐户控制级别,请用以下节点之一替换
          requestedExecutionLevel 节点。
        <requestedExecutionLevel  level="asInvoker" uiAccess="false" />
        <requestedExecutionLevel  level="requireAdministrator" uiAccess="false" />
        <requestedExecutionLevel  level="highestAvailable" uiAccess="false" />
          如果要利用文件和注册表虚拟化提供
          向后兼容性,请删除 requestedExecutionLevel 节点。
    -->
        <requestedExecutionLevel level="asInvoker" uiAccess="false" />
      </requestedPrivileges>
    </security>
  </trustInfo>
  <dependency>
    <dependentOS>
      <osVersionInfo>
        <os majorVersion="5" minorVersion="1" buildNumber="2600" servicePackMajor="0" />
      </osVersionInfo>
    </dependentOS>
  </dependency>
  <dependency>
    <dependentAssembly dependencyType="preRequisite" allowDelayedBinding="true">
      <assemblyIdentity name="Microsoft.Windows.CommonLanguageRuntime" version="4.0.30319.0" />
    </dependentAssembly>
  </dependency>
  <dependency>
    <dependentAssembly dependencyType="install" allowDelayedBinding="true" codebase="EntityFramework.dll" size="4988280">
      <assemblyIdentity name="EntityFramework" version="6.0.0.0" publicKeyToken="B77A5C561934E089" language="neutral" processorArchitecture="msil" />
      <hash>
        <dsig:Transforms>
          <dsig:Transform Algorithm="urn:schemas-microsoft-com:HashTransforms.Identity" />
        </dsig:Transforms>
        <dsig:DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha256" />
        <dsig:DigestValue>02FemIMUOJ0B3vMP62rh37pXY1ylD58dJeBNfcbCkYk=</dsig:DigestValue>
      </hash>
    </dependentAssembly>
  </dependency>
  <dependency>
    <dependentAssembly dependencyType="install" allowDelayedBinding="true" codebase="EntityFramework.SqlServer.dll" size="591736">
      <assemblyIdentity name="EntityFramework.SqlServer" version="6.0.0.0" publicKeyToken="B77A5C561934E089" language="neutral" processorArchitecture="msil" />
      <hash>
        <dsig:Transforms>
          <dsig:Transform Algorithm="urn:schemas-microsoft-com:HashTransforms.Identity" />
        </dsig:Transforms>
        <dsig:DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha256" />
        <dsig:DigestValue>vXgL8O3AegGuOBvdh0qH8BQ6x9HTpcdL/4cNT0avJYc=</dsig:DigestValue>
      </hash>
    </dependentAssembly>
  </dependency>
  <dependency>
    <dependentAssembly dependencyType="install" allowDelayedBinding="true" codebase="HZH_Controls.dll" size="12160512">
      <assemblyIdentity name="HZH_Controls" version="1.0.0.0" language="neutral" processorArchitecture="msil" />
      <hash>
        <dsig:Transforms>
          <dsig:Transform Algorithm="urn:schemas-microsoft-com:HashTransforms.Identity" />
        </dsig:Transforms>
        <dsig:DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha256" />
        <dsig:DigestValue>AXDLk+t5yd+xLlc6iju2adRjVMXFJCeBbtCCeUnaF0M=</dsig:DigestValue>
      </hash>
    </dependentAssembly>
  </dependency>
  <dependency>
    <dependentAssembly dependencyType="install" allowDelayedBinding="true" codebase="Newtonsoft.Json.dll" size="700336">
      <assemblyIdentity name="Newtonsoft.Json" version="12.0.0.0" publicKeyToken="30AD4FE6B2A6AEED" language="neutral" processorArchitecture="msil" />
      <hash>
        <dsig:Transforms>
          <dsig:Transform Algorithm="urn:schemas-microsoft-com:HashTransforms.Identity" />
        </dsig:Transforms>
        <dsig:DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha256" />
        <dsig:DigestValue>f5ErKKB8Im4L46z7L1fwUFOKugEA+h8L8sOfGh8dqBQ=</dsig:DigestValue>
      </hash>
    </dependentAssembly>
  </dependency>
  <dependency>
    <dependentAssembly dependencyType="install" allowDelayedBinding="true" codebase="System.Data.SQLite.dll" size="356352">
      <assemblyIdentity name="System.Data.SQLite" version="1.0.113.0" publicKeyToken="DB937BC2D44FF139" language="neutral" processorArchitecture="msil" />
      <hash>
        <dsig:Transforms>
          <dsig:Transform Algorithm="urn:schemas-microsoft-com:HashTransforms.Identity" />
        </dsig:Transforms>
        <dsig:DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha256" />
        <dsig:DigestValue>ek3elItXO1qSyx9joiAQBuYeokEH2WaKNu+jeOjUjwg=</dsig:DigestValue>
      </hash>
    </dependentAssembly>
  </dependency>
  <dependency>
    <dependentAssembly dependencyType="install" allowDelayedBinding="true" codebase="System.Data.SQLite.EF6.dll" size="184832">
      <assemblyIdentity name="System.Data.SQLite.EF6" version="1.0.113.0" publicKeyToken="DB937BC2D44FF139" language="neutral" processorArchitecture="msil" />
      <hash>
        <dsig:Transforms>
          <dsig:Transform Algorithm="urn:schemas-microsoft-com:HashTransforms.Identity" />
        </dsig:Transforms>
        <dsig:DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha256" />
        <dsig:DigestValue>mDNmk8UNv/8nOsmTak7bSPHytBVwn34x3HI0GmNp0dY=</dsig:DigestValue>
      </hash>
    </dependentAssembly>
  </dependency>
  <dependency>
    <dependentAssembly dependencyType="install" allowDelayedBinding="true" codebase="System.Data.SQLite.Linq.dll" size="184832">
      <assemblyIdentity name="System.Data.SQLite.Linq" version="1.0.113.0" publicKeyToken="DB937BC2D44FF139" language="neutral" processorArchitecture="msil" />
      <hash>
        <dsig:Transforms>
          <dsig:Transform Algorithm="urn:schemas-microsoft-com:HashTransforms.Identity" />
        </dsig:Transforms>
        <dsig:DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha256" />
        <dsig:DigestValue>FgNh5kGL7CdxjMq6Fh06kH0RNeGv2+bxyheBAshbenA=</dsig:DigestValue>
      </hash>
    </dependentAssembly>
  </dependency>
  <dependency>
    <dependentAssembly dependencyType="install" allowDelayedBinding="true" codebase="WindowsFormsApp1.exe" size="162832">
      <assemblyIdentity name="WindowsFormsApp1" version="1.0.0.0" language="neutral" processorArchitecture="x86" />
      <hash>
        <dsig:Transforms>
          <dsig:Transform Algorithm="urn:schemas-microsoft-com:HashTransforms.Identity" />
        </dsig:Transforms>
        <dsig:DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha256" />
        <dsig:DigestValue>4DkUmfBl6efKiA+860x3AvwG8YyNbE2MFjt7Ytbpcd8=</dsig:DigestValue>
      </hash>
    </dependentAssembly>
  </dependency>
  <file name="WindowsFormsApp1.exe.config" size="1530">
    <hash>
      <dsig:Transforms>
        <dsig:Transform Algorithm="urn:schemas-microsoft-com:HashTransforms.Identity" />
      </dsig:Transforms>
      <dsig:DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha256" />
      <dsig:DigestValue>MD8u539BoS8oJrWNQIfeHlY1JEOle4ihuSHL1GgKyXg=</dsig:DigestValue>
    </hash>
  </file>
<publisherIdentity name="CN=S0ZHK00LKCA6OYY\Administrator" issuerKeyHash="2b35ac65eddb83391791d6519cce0b3bcbb1a5a0" /><Signature Id="StrongNameSignature" xmlns="http://www.w3.org/2000/09/xmldsig#"><SignedInfo><CanonicalizationMethod Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#" /><SignatureMethod Algorithm="http://www.w3.org/2000/09/xmldsig#rsa-sha256" /><Reference URI=""><Transforms><Transform Algorithm="http://www.w3.org/2000/09/xmldsig#enveloped-signature" /><Transform Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#" /></Transforms><DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha256" /><DigestValue>LCmTzaL7KZtsLBif6qob2LkS/2B5YFsyjWNCOtuuBXE=</DigestValue></Reference></SignedInfo><SignatureValue>bDVEQu7DfvDyk4r3Mt5g9LQQr2fuEeEURIrwsgu/nhSgwWG7eOOeM8GFR9IDV2HnegnzdG2YgE5g9Z7ibamtvDhCFe5C/rFWlLa0NwDb+Erv5yUrusldqrS2KyAsgqhkeXet6qucdeQA5EeSnAFqUeBh1CtEL1SBbRlLNrBOijY=</SignatureValue><KeyInfo Id="StrongNameKeyInfo"><KeyValue><RSAKeyValue><Modulus>zRGyOs4i5QGBy1PBet3ouUppTp5LaOpmGjsC9lgzq/RD8sGdLR17GwSbzzDupGrIaVyzScYcyzdZDIoYB6nFBaIfI7f6eKqqqp9fhDNTZlAhUIEZi9HsT/efK3dphdQpq7gYGtl0XBl/7aTta89qiNuY1Pq0DfOrMZf8csb+iR0=</Modulus><Exponent>AQAB</Exponent></RSAKeyValue></KeyValue><msrel:RelData xmlns:msrel="http://schemas.microsoft.com/windows/rel/2005/reldata"><r:license xmlns:r="urn:mpeg:mpeg21:2003:01-REL-R-NS" xmlns:as="http://schemas.microsoft.com/windows/pki/2005/Authenticode"><r:grant><as:ManifestInformation Hash="7105aedb3a42638d325b607960ff12b9d81baaea9f182c6c9b29fba2cd93292c" Description="" Url=""><as:assemblyIdentity name="WindowsFormsApp1.exe" version="1.0.0.2" publicKeyToken="118fa79ef8c23156" language="neutral" processorArchitecture="x86" type="win32" /></as:ManifestInformation><as:SignedBy /><as:AuthenticodePublisher><as:X509SubjectName>CN=S0ZHK00LKCA6OYY\Administrator</as:X509SubjectName></as:AuthenticodePublisher></r:grant><r:issuer><Signature Id="AuthenticodeSignature" xmlns="http://www.w3.org/2000/09/xmldsig#"><SignedInfo><CanonicalizationMethod Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#" /><SignatureMethod Algorithm="http://www.w3.org/2000/09/xmldsig#rsa-sha256" /><Reference URI=""><Transforms><Transform Algorithm="http://www.w3.org/2000/09/xmldsig#enveloped-signature" /><Transform Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#" /></Transforms><DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha256" /><DigestValue>tnd+0rukr7mJkkcIHT99tBJzyVF333LXLo8BDbvugCk=</DigestValue></Reference></SignedInfo><SignatureValue>UpAHLQN4VVWlZn3HSLIPEhX+PGUxP1pNMo75eXq7Q7IK6YJAGd4GosOIq9NcCd32BgAcc1cbGnCDvEatv+21oK0funlD0LQm/0w61jSf90kMWBWw7zSgT3/sPEY9e4Ligb8u84G2Mlo6UVXHF2rJTgupfYOlVYVmP7Mn5pwSngE=</SignatureValue><KeyInfo><KeyValue><RSAKeyValue><Modulus>zRGyOs4i5QGBy1PBet3ouUppTp5LaOpmGjsC9lgzq/RD8sGdLR17GwSbzzDupGrIaVyzScYcyzdZDIoYB6nFBaIfI7f6eKqqqp9fhDNTZlAhUIEZi9HsT/efK3dphdQpq7gYGtl0XBl/7aTta89qiNuY1Pq0DfOrMZf8csb+iR0=</Modulus><Exponent>AQAB</Exponent></RSAKeyValue></KeyValue><X509Data><X509Certificate>MIICDTCCAXagAwIBAgIQG6fZwvDyLo5L65ocXk2mdjANBgkqhkiG9w0BAQsFADBFMUMwQQYDVQQDHjoAUwAwAFoASABLADAAMABMAEsAQwBBADYATwBZAFkAXABBAGQAbQBpAG4AaQBzAHQAcgBhAHQAbwByMB4XDTIwMDYwNTAyMzAzMVoXDTIxMDYwNTA4MzAzMVowRTFDMEEGA1UEAx46AFMAMABaAEgASwAwADAATABLAEMAQQA2AE8AWQBZAFwAQQBkAG0AaQBuAGkAcwB0AHIAYQB0AG8AcjCBnzANBgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEAzRGyOs4i5QGBy1PBet3ouUppTp5LaOpmGjsC9lgzq/RD8sGdLR17GwSbzzDupGrIaVyzScYcyzdZDIoYB6nFBaIfI7f6eKqqqp9fhDNTZlAhUIEZi9HsT/efK3dphdQpq7gYGtl0XBl/7aTta89qiNuY1Pq0DfOrMZf8csb+iR0CAwEAATANBgkqhkiG9w0BAQsFAAOBgQC+YbNeNS0aPE/Ig4elNsTGF0aY8XXJg4jViW+zSaMkogJpgvMlmtu9w/WKK9+0tIOby3ZXmPSjPxMCnqdzuvYklOUNc+/gazQE/YGg1eAFADDx1bI07zX6xSowOBvgNAO3PBnj8s+Dfjzf9+4ZCke8bzU9onTlgscMqdSXnfh6zw==</X509Certificate></X509Data></KeyInfo></Signature></r:issuer></r:license></msrel:RelData></KeyInfo></Signature></asmv1:assembly>
WindowsFormsApp1/utils/ui/DataGridViewHelper.cs
New file
@@ -0,0 +1,125 @@
using System;
using System.Collections.Generic;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace WindowsFormsApp1.utils.ui
{
    class DataGridViewHelper
    {
        public DataGridViewHelper(DataGridView gridview)
        {
            gridview.CellPainting += new DataGridViewCellPaintingEventHandler(gridview_CellPainting);
        }
        int top = 0;
        int left = 0;
        int height = 0;
        int width1 = 0;
        public void gridview_CellPainting(object sender, DataGridViewCellPaintingEventArgs e)
        {
            #region 重绘datagridview表头
            DataGridView dgv = (DataGridView)(sender);
            if (e.RowIndex != -1) return;
            foreach (TopHeader item in Headers)
            {
                if (e.ColumnIndex >= item.Index && e.ColumnIndex < item.Index + item.Span)
                {
                    if (e.ColumnIndex == item.Index)
                    {
                        top = e.CellBounds.Top;
                        left = e.CellBounds.Left;
                        height = e.CellBounds.Height;
                    }
                    int width = 0;//总长度
                    for (int i = item.Index; i < item.Span + item.Index; i++)
                    {
                        width += dgv.Columns[i].Width;
                    }
                    Rectangle rect = new Rectangle(left, top, width, e.CellBounds.Height);
                    using (Brush backColorBrush = new SolidBrush(e.CellStyle.BackColor)) //Cell背景颜色
                    {
                        //抹去原来的cell背景
                        e.Graphics.FillRectangle(backColorBrush, rect);
                    }
                    using (Pen gridLinePen = new Pen(dgv.GridColor)) //画笔颜色
                    {
                        e.Graphics.DrawLine(gridLinePen, left, top, left + width, top);
                        e.Graphics.DrawLine(gridLinePen, left, top + height / 2, left + width, top + height / 2);
                        e.Graphics.DrawLine(gridLinePen, left, top + height - 1, left + width, top + height - 1); //自定义区域下部横线
                        width1 = 0;
                        e.Graphics.DrawLine(gridLinePen, left - 1, top, left - 1, top + height);
                        for (int i = item.Index; i < item.Span + item.Index; i++)
                        {
                            if (i == 1 || i == 2)
                            {
                                width1 += dgv.Columns[i].Width - 1; //分隔区域首列
                            }
                            else
                            {
                                width1 += dgv.Columns[i].Width;
                            }
                            e.Graphics.DrawLine(gridLinePen, left + width1, top + height / 2, left + width1, top + height);
                        }
                        SizeF sf = e.Graphics.MeasureString(item.Text, e.CellStyle.Font);
                        float lstr = (width - sf.Width) / 2;
                        float rstr = (height / 2 - sf.Height) / 2;
                        //画出文本框
                        if (item.Text != "")
                        {
                            e.Graphics.DrawString(item.Text, e.CellStyle.Font,
                                                        new SolidBrush(e.CellStyle.ForeColor),
                                                            left + lstr,
                                                            top + rstr,
                                                            StringFormat.GenericDefault);
                        }
                        width = 0;
                        width1 = 0;
                        for (int i = item.Index; i < item.Span + item.Index; i++)
                        {
                            string columnValue = dgv.Columns[i].HeaderText;
                            width1 = dgv.Columns[i].Width;
                            sf = e.Graphics.MeasureString(columnValue, e.CellStyle.Font);
                            lstr = (width1 - sf.Width) / 2;
                            rstr = (height / 2 - sf.Height) / 2;
                            if (columnValue != "")
                            {
                                e.Graphics.DrawString(columnValue, e.CellStyle.Font,
                                                            new SolidBrush(e.CellStyle.ForeColor),
                                                                left + width + lstr,
                                                                top + height / 2 + rstr,
                                                                StringFormat.GenericDefault);
                            }
                            width += dgv.Columns[i].Width;
                        }
                    }
                    e.Handled = true;
                }
            }
            #endregion
        }
        private List<TopHeader> _headers = new List<TopHeader>();
        public List<TopHeader> Headers
        {
            get { return _headers; }
        }
        public struct TopHeader
        {
            public TopHeader(int index, int span, string text)
            {
                this.Index = index;
                this.Span = span;
                this.Text = text;
            }
            public int Index;
            public int Span;
            public string Text;
        }
    }
}