C# Excel处理工具

论坛 期权论坛     
选择匿名的用户   2021-6-2 17:50   149   0
<div class="content" id="articleContent">
<div class="ad-wrap">
  <p><a href="https://my.oschina.net/u/2663968/blog/3061697" style="color:#A00;font-weight:bold;">2019独角兽企业重金招聘Python工程师标准&gt;&gt;&gt; </a> <img alt="hot3.png" src="https://beijingoptbbs.oss-cn-beijing.aliyuncs.com/cs/5606289-cf0d92129138e2c138e143696168013a.png"></p>
</div>
<p>需求:选择一个Excel文件,然后对该Excel文件进行处理,再导出一个处理后的Excel文件。</p>
<p>效果图</p>
<p> <img alt="" src="https://beijingoptbbs.oss-cn-beijing.aliyuncs.com/cs/5606289-99a2aae7e9aa65bd1abd1f6492ad04c5.png"></p>
<p>声明:我对winform开发不熟,但是我看到许多开发人员做东西只管交差,从不考虑用户体验,也不考虑容错处理,我就在想,难道就不能做得专业一点吗?当你用别人做的东西,满口吐槽的时候有没有想过别人用你做的东西的时候,会不会一样的狂喷呢?</p>
<p><img alt="" src="https://beijingoptbbs.oss-cn-beijing.aliyuncs.com/cs/5606289-169afd5971414b9320357a1adab67439.png"></p>
<p>这里对Excel的操作使用了NPOI.dll组件,可自行去网上现在或者使用NuGet下载。</p>
<span id="OSC_h2_1"></span>
<h2>界面皮肤</h2>
<p>IrisSkin4.dll包括(73皮肤&#43;vs2012兼容) 绿色版下载地址:<a href="http://pan.baidu.com/s/1eQ1sAUA">http://pan.baidu.com/s/1eQ1sAUA</a></p>
<p>这里使用到了IrisSkin4.dll皮肤控件</p>
<p>使用方法:</p>
<p>1、添加<span style="font-family:&#39;Times New Roman&#39;;">IrisSkin4.dll</span><span style="font-family:&#39;宋体&#39;;">引用</span></p>
<p><span style="font-family:&#39;宋体&#39;;"><img alt="" src="https://beijingoptbbs.oss-cn-beijing.aliyuncs.com/cs/5606289-6df3c9eb6cc3176aedd370d9110fd4a6.png"></span></p>
<p>1、工具箱,添加此程序集</p>
<p> <br><img alt="" src="https://beijingoptbbs.oss-cn-beijing.aliyuncs.com/cs/5606289-f409264f45ba4e12be7226b25cd24950.png"><img alt="" src="https://beijingoptbbs.oss-cn-beijing.aliyuncs.com/cs/5606289-75f5cbbb50c0f43d3181e30448a6c136.png"></p>
<p> </p>
<p>2、复制皮肤文件</p>
<p> <img alt="" src="https://beijingoptbbs.oss-cn-beijing.aliyuncs.com/cs/5606289-3b300e7baa605a5254e41ebfc3fa0a9e.png"></p>
<p>设置皮肤文件的属性</p>
<p><span style="font-family:&#39;宋体&#39;;"><img alt="" src="https://beijingoptbbs.oss-cn-beijing.aliyuncs.com/cs/5606289-d6597931505c918d5925879fd360029c.png"></span></p>
<p>3、代码调用</p>
<div class="cnblogs_code">
  <pre class="blockcode"><code><span style="color:#0000ff;">public</span><span style="color:#000000;"> frmMain() { InitializeComponent(); </span><span style="color:#008000;">//</span><span style="color:#008000;">加载皮肤 </span><span style="color:#000000;"> skinEngine1.SkinFile </span>&#61;<span style="color:#800000;">&#34;</span><span style="color:#800000;">Skins/Warm.ssk</span><span style="color:#800000;">&#34;</span><span style="color:#000000;">; skinEngine1.Active </span>&#61; <span style="color:#0000ff;">true</span><span style="color:#000000;">; skinEngine1.SkinDialogs </span>&#61; <span style="color:#0000ff;">false</span><span style="color:#000000;">;<br>  //如果要让某个控件不使用皮肤,则设置此属性,这样,就可以单独为此控件设置属性了,否则为此控件设置的属性将会被皮肤属性覆盖 lblShow.Tag </span>&#61;<span style="color:#000000;"> skinEngine1.DisableTag; lblMsg.Tag </span>&#61;<span style="color:#000000;"> skinEngine1.DisableTag; </span><span style="color:#0000ff;">this</span>.lblShow.ForeColor &#61;<span style="color:#000000;"> Color.Red; </span><span style="color:#0000ff;">this</span>.lblMsg.ForeColor &#61;<span style="color:#000000;"> Color.Green; }</span></code></pre>
</div>
<p>关于<span style="font-family:&#39;Times New Roman&#39;;">excel</span><span style="font-family:&#39;宋体&#39;;">的操作,这里还是使用</span><span style="font-family:&#39;Times New Roman&#39;;">NPOI.dll</span><span style="font-family:&#39;宋体&#39;;">,可以自己从网上下载,也可以直接从</span><span style="font-family:&#39;Times New Roman&#39;;">vs</span><span style="font-family:&#39;宋体&#39;;">的</span><span style="font-family:&#39;Times New Roman&#39;;">NuGet</span><span style="font-family:&#39;宋体&#39;;">中下载。</span></p>
<p>需要注意的是,对于一些比较耗时的界面操作,建议使用一个进度条,然后以异步调用的形式进行操作。异步调用可以开启一个线程,如果在线程调用的代码中需要修改窗体控件,也就是要修改主线程的内容,可以使用如下代码:</p>
<p>  Invoke(new MethodInvoker(delegate { progressBar.Maximum &#61; sheet.LastRowNum; }));}</p>
<p>代码很简单,这里我不做过多的说明,详情请参见代码。</p>
<div class="cnblogs_code">
  <img alt="" src="https://beijingoptbbs.oss-cn-beijing.aliyuncs.com/cs/5606289-d205c796e8b543653d1c9570496d9897.gif">
  <img alt="" src="https://beijingoptbbs.oss-cn-beijing.aliyuncs.com/cs/5606289-3160d4a174cd34c00bf457e27c69a510.gif">
  <div class="cnblogs_code_hide">
   <pre class="blockcode"><code><span style="color:#0000ff;"
分享到 :
0 人收藏
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

积分:3875789
帖子:775174
精华:0
期权论坛 期权论坛
发布
内容

下载期权论坛手机APP