﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>博客园-DOT NET NOTE</title><link>http://www.cnblogs.com/zhusimu/</link><description>Jack Wool   </description><language>zh-cn</language><lastBuildDate>Tue, 18 Nov 2008 14:30:14 GMT</lastBuildDate><pubDate>Tue, 18 Nov 2008 14:30:14 GMT</pubDate><ttl>60</ttl><item><title>探讨一下C#里面的枚举与位或运算符</title><link>http://www.cnblogs.com/zhusimu/archive/2008/07/12/1241453.html</link><dc:creator>Simens</dc:creator><author>Simens</author><pubDate>Sat, 12 Jul 2008 07:55:00 GMT</pubDate><guid>http://www.cnblogs.com/zhusimu/archive/2008/07/12/1241453.html</guid><wfw:comment>http://www.cnblogs.com/zhusimu/comments/1241453.html</wfw:comment><comments>http://www.cnblogs.com/zhusimu/archive/2008/07/12/1241453.html#Feedback</comments><slash:comments>12</slash:comments><wfw:commentRss>http://www.cnblogs.com/zhusimu/comments/commentRss/1241453.html</wfw:commentRss><trackback:ping>http://www.cnblogs.com/zhusimu/services/trackbacks/1241453.html</trackback:ping><description><![CDATA[<span style="font-family: 宋体">&nbsp; 今天看《</span><span lang="EN-US">Pro Net 2.0 Windows Forms And Custom Cortrols In C#</span><span style="font-family: 宋体">》时看到枚举一节，发现了在一个枚举里面需要合并多个值，看到了用到了</span><span lang="EN-US">&#8221;|&#8221;</span><span style="font-family: 宋体">运算符，原来没怎么注意，今天想了一下为什么用</span><span lang="EN-US">&#8221;|&#8221;</span><span style="font-family: 宋体">呢？<br />
&nbsp; <span style="font-family: 宋体">在</span><span lang="EN-US">MSDN</span><span style="font-family: 宋体">里面看到了这样一句话：&#8220;用</span><span lang="EN-US">2</span><span style="font-family: 宋体">的幂（即</span><span lang="EN-US"> 1</span><span style="font-family: 宋体">、</span><span lang="EN-US">2</span><span style="font-family: 宋体">、</span><span lang="EN-US">4</span><span style="font-family: 宋体">、</span><span lang="EN-US">8 </span><span style="font-family: 宋体">等）定义枚举常量。这意味着组合的枚举常量中的各个标志都不重叠。&#8221;</span><br />
&nbsp; <span style="font-family: 宋体">于是写了一个例子：</span><br />
<div class="cnblogs_code">
<p><img alt="" src="http://www.cnblogs.com/Images/OutliningIndicators/None.gif" align="top" /><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[FlagsAttribute]<br />
<img alt="" src="http://www.cnblogs.com/Images/OutliningIndicators/None.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">enum</span><span style="color: #000000">&nbsp;Colors_1<br />
<img id="Codehighlighter1_55_119_Open_Image" onclick="this.style.display='none'; document.getElementById('Codehighlighter1_55_119_Open_Text').style.display='none'; document.getElementById('Codehighlighter1_55_119_Closed_Image').style.display='inline'; document.getElementById('Codehighlighter1_55_119_Closed_Text').style.display='inline';" alt="" src="http://www.cnblogs.com/Images/OutliningIndicators/ExpandedBlockStart.gif" align="top" /><img id="Codehighlighter1_55_119_Closed_Image" style="display: none" onclick="this.style.display='none'; document.getElementById('Codehighlighter1_55_119_Closed_Text').style.display='none'; document.getElementById('Codehighlighter1_55_119_Open_Image').style.display='inline'; document.getElementById('Codehighlighter1_55_119_Open_Text').style.display='inline';" alt="" src="http://www.cnblogs.com/Images/OutliningIndicators/ContractedBlock.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span id="Codehighlighter1_55_119_Closed_Text" style="border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff"><img alt="" src="http://www.cnblogs.com/Images/dot.gif" /></span><span id="Codehighlighter1_55_119_Open_Text"><span style="color: #000000">{<br />
<img alt="" src="http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Red&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;</span><span style="color: #800080">1</span><span style="color: #000000">,&nbsp;Green&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;</span><span style="color: #800080">2</span><span style="color: #000000">,&nbsp;Blue&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;</span><span style="color: #800080">4</span><span style="color: #000000">,&nbsp;Yellow&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;</span><span style="color: #800080">8</span><span style="color: #000000"><br />
<img alt="" src="http://www.cnblogs.com/Images/OutliningIndicators/ExpandedBlockEnd.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000">;<br />
<img alt="" src="http://www.cnblogs.com/Images/OutliningIndicators/None.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #008000">//</span><span style="color: #008000">测试</span><span style="color: #008000"><br />
<img alt="" src="http://www.cnblogs.com/Images/OutliningIndicators/None.gif" align="top" /></span><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">private</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">void</span><span style="color: #000000">&nbsp;button1_Click(</span><span style="color: #0000ff">object</span><span style="color: #000000">&nbsp;sender,&nbsp;EventArgs&nbsp;e)<br />
<img id="Codehighlighter1_205_438_Open_Image" onclick="this.style.display='none'; document.getElementById('Codehighlighter1_205_438_Open_Text').style.display='none'; document.getElementById('Codehighlighter1_205_438_Closed_Image').style.display='inline'; document.getElementById('Codehighlighter1_205_438_Closed_Text').style.display='inline';" alt="" src="http://www.cnblogs.com/Images/OutliningIndicators/ExpandedBlockStart.gif" align="top" /><img id="Codehighlighter1_205_438_Closed_Image" style="display: none" onclick="this.style.display='none'; document.getElementById('Codehighlighter1_205_438_Closed_Text').style.display='none'; document.getElementById('Codehighlighter1_205_438_Open_Image').style.display='inline'; document.getElementById('Codehighlighter1_205_438_Open_Text').style.display='inline';" alt="" src="http://www.cnblogs.com/Images/OutliningIndicators/ContractedBlock.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span id="Codehighlighter1_205_438_Closed_Text" style="border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff"><img alt="" src="http://www.cnblogs.com/Images/dot.gif" /></span><span id="Codehighlighter1_205_438_Open_Text"><span style="color: #000000">{<br />
<img alt="" src="http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Colors_1&nbsp;color_1&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;Colors_1.Red&nbsp;</span><span style="color: #000000">|</span><span style="color: #000000">&nbsp;Colors_1.Green&nbsp;</span><span style="color: #000000">|</span><span style="color: #000000">&nbsp;Colors_1.Blue&nbsp;<br />
</span><span style="color: #000000">|</span><span style="color: #000000">&nbsp;Colors_1.Yellow;<br />
<img alt="" src="http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif" align="top" /><br />
<img alt="" src="http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">string</span><span style="color: #000000">&nbsp;strResult&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;color_1.ToString()&nbsp;</span><span style="color: #000000">+</span><span style="color: #000000">&nbsp;</span><span style="color: #800000">"</span><span style="color: #800000">&nbsp;</span><span style="color: #800000">"</span><span style="color: #000000">&nbsp;</span><span style="color: #000000">+</span><span style="color: #000000">&nbsp;((</span><span style="color: #0000ff">int</span><span style="color: #000000">)color_1)<br />
.ToString();<br />
<img alt="" src="http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;MessageBox.Show(strResult);<br />
<img alt="" src="http://www.cnblogs.com/Images/OutliningIndicators/ExpandedBlockEnd.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span></p>
</div>
</span>输出结果：<br />
<img height="107" alt="" src="http://www.cnblogs.com/images/cnblogs_com/zhusimu/enue1.jpg" width="195" border="0" /><br />
<br />
<font face="Verdana">咦!&nbsp; 1 + 2 + 4 + 8 = 15 刚刚等于15,难道这是巧合？<br />
全部显示出来了，安逸！</font>
<p><font face="Verdana">再写个例子试试：<br />
</p>
<div class="cnblogs_code"><img alt="" src="http://www.cnblogs.com/Images/OutliningIndicators/None.gif" align="top" /><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[FlagsAttribute]<br />
<img alt="" src="http://www.cnblogs.com/Images/OutliningIndicators/None.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">enum</span><span style="color: #000000">&nbsp;Colors_2<br />
<img id="Codehighlighter1_55_119_Open_Image" onclick="this.style.display='none'; document.getElementById('Codehighlighter1_55_119_Open_Text').style.display='none'; document.getElementById('Codehighlighter1_55_119_Closed_Image').style.display='inline'; document.getElementById('Codehighlighter1_55_119_Closed_Text').style.display='inline';" alt="" src="http://www.cnblogs.com/Images/OutliningIndicators/ExpandedBlockStart.gif" align="top" /><img id="Codehighlighter1_55_119_Closed_Image" style="display: none" onclick="this.style.display='none'; document.getElementById('Codehighlighter1_55_119_Closed_Text').style.display='none'; document.getElementById('Codehighlighter1_55_119_Open_Image').style.display='inline'; document.getElementById('Codehighlighter1_55_119_Open_Text').style.display='inline';" alt="" src="http://www.cnblogs.com/Images/OutliningIndicators/ContractedBlock.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span id="Codehighlighter1_55_119_Closed_Text" style="border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff"><img alt="" src="http://www.cnblogs.com/Images/dot.gif" /></span><span id="Codehighlighter1_55_119_Open_Text"><span style="color: #000000">{<br />
<img alt="" src="http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Red&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;</span><span style="color: #800080">1</span><span style="color: #000000">,&nbsp;Green&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;</span><span style="color: #800080">2</span><span style="color: #000000">,&nbsp;Blue&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;</span><span style="color: #800080">3</span><span style="color: #000000">,&nbsp;Yellow&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;</span><span style="color: #800080">4</span><span style="color: #000000"><br />
<img alt="" src="http://www.cnblogs.com/Images/OutliningIndicators/ExpandedBlockEnd.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000">;<br />
<img alt="" src="http://www.cnblogs.com/Images/OutliningIndicators/None.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #008000">//</span><span style="color: #008000">测试</span><span style="color: #008000"><br />
<img alt="" src="http://www.cnblogs.com/Images/OutliningIndicators/None.gif" align="top" /></span><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">private</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">void</span><span style="color: #000000">&nbsp;button1_Click(</span><span style="color: #0000ff">object</span><span style="color: #000000">&nbsp;sender,&nbsp;EventArgs&nbsp;e)<br />
<img id="Codehighlighter1_205_438_Open_Image" onclick="this.style.display='none'; document.getElementById('Codehighlighter1_205_438_Open_Text').style.display='none'; document.getElementById('Codehighlighter1_205_438_Closed_Image').style.display='inline'; document.getElementById('Codehighlighter1_205_438_Closed_Text').style.display='inline';" alt="" src="http://www.cnblogs.com/Images/OutliningIndicators/ExpandedBlockStart.gif" align="top" /><img id="Codehighlighter1_205_438_Closed_Image" style="display: none" onclick="this.style.display='none'; document.getElementById('Codehighlighter1_205_438_Closed_Text').style.display='none'; document.getElementById('Codehighlighter1_205_438_Open_Image').style.display='inline'; document.getElementById('Codehighlighter1_205_438_Open_Text').style.display='inline';" alt="" src="http://www.cnblogs.com/Images/OutliningIndicators/ContractedBlock.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span id="Codehighlighter1_205_438_Closed_Text" style="border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff"><img alt="" src="http://www.cnblogs.com/Images/dot.gif" /></span><span id="Codehighlighter1_205_438_Open_Text"><span style="color: #000000">{<br />
<img alt="" src="http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Colors_2&nbsp;color_2&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;Colors_2.Red&nbsp;</span><span style="color: #000000">|</span><span style="color: #000000">&nbsp;Colors_2.Green&nbsp;</span><span style="color: #000000">|</span><span style="color: #000000">&nbsp;Colors_2.Blue<br />
&nbsp;</span><span style="color: #000000">|</span><span style="color: #000000">&nbsp;Colors_2.Yellow;<br />
<img alt="" src="http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif" align="top" /><br />
<img alt="" src="http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">string</span><span style="color: #000000">&nbsp;strResult&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;color_2.ToString()&nbsp;</span><span style="color: #000000">+</span><span style="color: #000000">&nbsp;</span><span style="color: #800000">"</span><span style="color: #800000">&nbsp;</span><span style="color: #800000">"</span><span style="color: #000000">&nbsp;</span><span style="color: #000000">+</span><span style="color: #000000">&nbsp;((</span><span style="color: #0000ff">int</span><span style="color: #000000">)color_2).ToString();<br />
<img alt="" src="http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;MessageBox.Show(strResult);<br />
<img alt="" src="http://www.cnblogs.com/Images/OutliningIndicators/ExpandedBlockEnd.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span></div>
<br />
<span style="font-size: 10pt; font-family: 宋体">输出结果：<br />
</span><img height="107" alt="" src="http://www.cnblogs.com/images/cnblogs_com/zhusimu/enue2.jpg" width="117" border="0" /><br />
<p><font face="Verdana">晕，怎么没把颜色全部显示出来呀？<br />
咦！3 + 4 = 7 刚好显示枚举值为3,4的两种颜色 </font></p>
<p><font face="Verdana">再写一个例子呢?<br />
</p>
<div class="cnblogs_code"><img alt="" src="http://www.cnblogs.com/Images/OutliningIndicators/None.gif" align="top" /><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #008000">//</span><span style="color: #008000">测试</span><span style="color: #008000"><br />
<img alt="" src="http://www.cnblogs.com/Images/OutliningIndicators/None.gif" align="top" /></span><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">private</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">void</span><span style="color: #000000">&nbsp;button1_Click(</span><span style="color: #0000ff">object</span><span style="color: #000000">&nbsp;sender,&nbsp;EventArgs&nbsp;e)<br />
<img id="Codehighlighter1_84_236_Open_Image" onclick="this.style.display='none'; document.getElementById('Codehighlighter1_84_236_Open_Text').style.display='none'; document.getElementById('Codehighlighter1_84_236_Closed_Image').style.display='inline'; document.getElementById('Codehighlighter1_84_236_Closed_Text').style.display='inline';" alt="" src="http://www.cnblogs.com/Images/OutliningIndicators/ExpandedBlockStart.gif" align="top" /><img id="Codehighlighter1_84_236_Closed_Image" style="display: none" onclick="this.style.display='none'; document.getElementById('Codehighlighter1_84_236_Closed_Text').style.display='none'; document.getElementById('Codehighlighter1_84_236_Open_Image').style.display='inline'; document.getElementById('Codehighlighter1_84_236_Open_Text').style.display='inline';" alt="" src="http://www.cnblogs.com/Images/OutliningIndicators/ContractedBlock.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span id="Codehighlighter1_84_236_Closed_Text" style="border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff"><img alt="" src="http://www.cnblogs.com/Images/dot.gif" /></span><span id="Codehighlighter1_84_236_Open_Text"><span style="color: #000000">{<br />
<img alt="" src="http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Colors_1&nbsp;c&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;(Colors_1)Enum.Parse(</span><span style="color: #0000ff">typeof</span><span style="color: #000000">(Colors_1),&nbsp;</span><span style="color: #800000">"</span><span style="color: #800000">7</span><span style="color: #800000">"</span><span style="color: #000000">);<br />
<img alt="" src="http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;MessageBox.Show(c.ToString()&nbsp;</span><span style="color: #000000">+</span><span style="color: #000000">&nbsp;</span><span style="color: #800000">"</span><span style="color: #800000">&nbsp;</span><span style="color: #800000">"</span><span style="color: #000000">&nbsp;</span><span style="color: #000000">+</span><span style="color: #000000">&nbsp;((</span><span style="color: #0000ff">int</span><span style="color: #000000">)c).ToString());<br />
<img alt="" src="http://www.cnblogs.com/Images/OutliningIndicators/ExpandedBlockEnd.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span></div>
<p></font><span style="font-size: 10pt; font-family: 宋体">输出结果：</span><br />
<img height="107" alt="" src="http://www.cnblogs.com/images/cnblogs_com/zhusimu/enue3.jpg" width="141" border="0" /><br />
</p>
<p><font face="Verdana">居然会自动转换成相应的枚举值，厉害！</font></p>
<p><font face="Verdana">&nbsp;再来我加个枚举为7的值：<br />
</p>
<div class="cnblogs_code"><img alt="" src="http://www.cnblogs.com/Images/OutliningIndicators/None.gif" align="top" /><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[FlagsAttribute]<br />
<img alt="" src="http://www.cnblogs.com/Images/OutliningIndicators/None.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">enum</span><span style="color: #000000">&nbsp;Colors_1<br />
<img id="Codehighlighter1_55_130_Open_Image" onclick="this.style.display='none'; document.getElementById('Codehighlighter1_55_130_Open_Text').style.display='none'; document.getElementById('Codehighlighter1_55_130_Closed_Image').style.display='inline'; document.getElementById('Codehighlighter1_55_130_Closed_Text').style.display='inline';" alt="" src="http://www.cnblogs.com/Images/OutliningIndicators/ExpandedBlockStart.gif" align="top" /><img id="Codehighlighter1_55_130_Closed_Image" style="display: none" onclick="this.style.display='none'; document.getElementById('Codehighlighter1_55_130_Closed_Text').style.display='none'; document.getElementById('Codehighlighter1_55_130_Open_Image').style.display='inline'; document.getElementById('Codehighlighter1_55_130_Open_Text').style.display='inline';" alt="" src="http://www.cnblogs.com/Images/OutliningIndicators/ContractedBlock.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span id="Codehighlighter1_55_130_Closed_Text" style="border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff"><img alt="" src="http://www.cnblogs.com/Images/dot.gif" /></span><span id="Codehighlighter1_55_130_Open_Text"><span style="color: #000000">{<br />
<img alt="" src="http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Red&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;</span><span style="color: #800080">1</span><span style="color: #000000">,&nbsp;Green&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;</span><span style="color: #800080">2</span><span style="color: #000000">,&nbsp;Blue&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;</span><span style="color: #800080">4</span><span style="color: #000000">,&nbsp;Yellow&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;</span><span style="color: #800080">8</span><span style="color: #000000">,&nbsp;Seven&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;</span><span style="color: #800080">7</span><span style="color: #000000"><br />
<img alt="" src="http://www.cnblogs.com/Images/OutliningIndicators/ExpandedBlockEnd.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000">;<br />
<img alt="" src="http://www.cnblogs.com/Images/OutliningIndicators/None.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #008000">//</span><span style="color: #008000">测试</span><span style="color: #008000"><br />
<img alt="" src="http://www.cnblogs.com/Images/OutliningIndicators/None.gif" align="top" /></span><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">private</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">void</span><span style="color: #000000">&nbsp;button1_Click(</span><span style="color: #0000ff">object</span><span style="color: #000000">&nbsp;sender,&nbsp;EventArgs&nbsp;e)<br />
<img id="Codehighlighter1_216_368_Open_Image" onclick="this.style.display='none'; document.getElementById('Codehighlighter1_216_368_Open_Text').style.display='none'; document.getElementById('Codehighlighter1_216_368_Closed_Image').style.display='inline'; document.getElementById('Codehighlighter1_216_368_Closed_Text').style.display='inline';" alt="" src="http://www.cnblogs.com/Images/OutliningIndicators/ExpandedBlockStart.gif" align="top" /><img id="Codehighlighter1_216_368_Closed_Image" style="display: none" onclick="this.style.display='none'; document.getElementById('Codehighlighter1_216_368_Closed_Text').style.display='none'; document.getElementById('Codehighlighter1_216_368_Open_Image').style.display='inline'; document.getElementById('Codehighlighter1_216_368_Open_Text').style.display='inline';" alt="" src="http://www.cnblogs.com/Images/OutliningIndicators/ContractedBlock.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span id="Codehighlighter1_216_368_Closed_Text" style="border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff"><img alt="" src="http://www.cnblogs.com/Images/dot.gif" /></span><span id="Codehighlighter1_216_368_Open_Text"><span style="color: #000000">{<br />
<img alt="" src="http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Colors_1&nbsp;c&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;(Colors_1)Enum.Parse(</span><span style="color: #0000ff">typeof</span><span style="color: #000000">(Colors_1),&nbsp;</span><span style="color: #800000">"</span><span style="color: #800000">7</span><span style="color: #800000">"</span><span style="color: #000000">);<br />
<img alt="" src="http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;MessageBox.Show(c.ToString()&nbsp;</span><span style="color: #000000">+</span><span style="color: #000000">&nbsp;</span><span style="color: #800000">"</span><span style="color: #800000">&nbsp;</span><span style="color: #800000">"</span><span style="color: #000000">&nbsp;</span><span style="color: #000000">+</span><span style="color: #000000">&nbsp;((</span><span style="color: #0000ff">int</span><span style="color: #000000">)c).ToString());<br />
<img alt="" src="http://www.cnblogs.com/Images/OutliningIndicators/ExpandedBlockEnd.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span></div>
<br />
输出结果：<br />
<img height="107" alt="" src="http://www.cnblogs.com/images/cnblogs_com/zhusimu/enue4.jpg" width="108" border="0" /><br />
<span style="font-family: 宋体">印证了</span><span lang="EN-US">MSDN</span><span style="font-family: 宋体">那句话，只有将枚举值设置为</span><span lang="EN-US">0,2,4,8&#8230;..</span><span style="font-family: 宋体">这样的只才会叠加，枚举会自动判断当前值，如果枚举里面有这个值当然就显示这个值了；如果没有就做匹配用加法看看那几个数加起来刚好是这个枚举值，但如果有几个数字加起来都等于这个值怎么办呢？还没遇到呢，目前这是我的理解，希望大牛些指教！</span></font></font> 
   <img src ="http://www.cnblogs.com/zhusimu/aggbug/1241453.html?type=1" width = "1" height = "1" /><br><br><a href="http://news.cnblogs.com/n/43598/" target="_blank">[新闻]应用程序架构指导包2.0 Beta 2发布</a><br/><a href="http://www.cnblogs.com" target="_blank">博客园首页</a>&nbsp;<a href="http://space.cnblogs.com" target="_blank">社区</a>&nbsp;<a href="http://news.cnblogs.com" target="_blank">新闻频道</a>&nbsp;<a href="http://space.cnblogs.com/group.htm" target="_blank">小组</a>&nbsp;<a href="http://space.cnblogs.com/q" target="_blank">博问</a>&nbsp;<a href="http://wz.cnblogs.com/" target="_blank">网摘</a>&nbsp;<a href="http://space.cnblogs.com/ing" target="_blank">闪存</a>]]></description></item><item><title>C#中读写INI文件</title><link>http://www.cnblogs.com/zhusimu/archive/2008/07/12/1241439.html</link><dc:creator>Simens</dc:creator><author>Simens</author><pubDate>Sat, 12 Jul 2008 07:34:00 GMT</pubDate><guid>http://www.cnblogs.com/zhusimu/archive/2008/07/12/1241439.html</guid><wfw:comment>http://www.cnblogs.com/zhusimu/comments/1241439.html</wfw:comment><comments>http://www.cnblogs.com/zhusimu/archive/2008/07/12/1241439.html#Feedback</comments><slash:comments>8</slash:comments><wfw:commentRss>http://www.cnblogs.com/zhusimu/comments/commentRss/1241439.html</wfw:commentRss><trackback:ping>http://www.cnblogs.com/zhusimu/services/trackbacks/1241439.html</trackback:ping><description><![CDATA[摘要: 在网上找了关于ini文件读写方法,还是没有找到ini文件中有一个Section多个Key的读写情况,在一篇C++文章中得到点提示操作如下:1.创建ini文件读写类：usingSystem.Runtime.InteropServices;usingSystem.Text;namespaceINIDemo{/**////&lt;summary&gt;///读写ini文件的类///调用kernel32.&nbsp;&nbsp;<a href='http://www.cnblogs.com/zhusimu/archive/2008/07/12/1241439.html'>阅读全文</a><img src ="http://www.cnblogs.com/zhusimu/aggbug/1241439.html?type=1" width = "1" height = "1" /><br><br><a href="http://news.cnblogs.com/n/43598/" target="_blank">[新闻]应用程序架构指导包2.0 Beta 2发布</a><br/><a href="http://www.cnblogs.com" target="_blank">博客园首页</a>&nbsp;<a href="http://space.cnblogs.com" target="_blank">社区</a>&nbsp;<a href="http://news.cnblogs.com" target="_blank">新闻频道</a>&nbsp;<a href="http://space.cnblogs.com/group.htm" target="_blank">小组</a>&nbsp;<a href="http://space.cnblogs.com/q" target="_blank">博问</a>&nbsp;<a href="http://wz.cnblogs.com/" target="_blank">网摘</a>&nbsp;<a href="http://space.cnblogs.com/ing" target="_blank">闪存</a>]]></description></item><item><title>开发之路还能走多远</title><link>http://www.cnblogs.com/zhusimu/archive/2008/07/11/1240816.html</link><dc:creator>Simens</dc:creator><author>Simens</author><pubDate>Fri, 11 Jul 2008 07:26:00 GMT</pubDate><guid>http://www.cnblogs.com/zhusimu/archive/2008/07/11/1240816.html</guid><wfw:comment>http://www.cnblogs.com/zhusimu/comments/1240816.html</wfw:comment><comments>http://www.cnblogs.com/zhusimu/archive/2008/07/11/1240816.html#Feedback</comments><slash:comments>48</slash:comments><wfw:commentRss>http://www.cnblogs.com/zhusimu/comments/commentRss/1240816.html</wfw:commentRss><trackback:ping>http://www.cnblogs.com/zhusimu/services/trackbacks/1240816.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;<br />
<span style="font-family: 宋体">&nbsp;&nbsp;&nbsp; 转眼间毕业快一年多了，想想这段时间以来的经历及现在的苦恼，我决定把自己的一些想法跟博客园里面的朋友们分享一下，我现在很迷茫，希望朋友们些能给我一些指点或者建议，不知道我的路在何方？</span> <br />
<span style="font-family: 宋体">&nbsp;&nbsp;&nbsp; 大三的时候开始学习</span>.net<span style="font-family: 宋体">，当时看见周围几个同学学得火热，马上也要毕业找工作了，感觉要学点专业技术才行，于是也就跟着学</span>.net<span style="font-family: 宋体">了。大学里面我学的东西很单一，毕业时还借书证时才发现自己借书总数还没超过</span>50<span style="font-family: 宋体">本，这</span>50<span style="font-family: 宋体">本书大部分是讲</span>.net<span style="font-family: 宋体">的，由于大部分书所讲的内容都差不多，以至后来对</span>.net<span style="font-family: 宋体">书籍都没多大兴趣了。学了点</span>.net<span style="font-family: 宋体">的基础知识浑浑噩噩的就毕业了。<br />
</span><span style="font-family: 宋体">&nbsp;&nbsp; 毕业后找到的第一份和</span>.net<span style="font-family: 宋体">开发相关的工作是家日本公司，这让我有机会尝试了一次用</span>.net<span style="font-family: 宋体">来做一个测量汽车转向角的程序，我之所以叫它程序没叫软件，在我看看我做的这个程序顶多算一个小工具而已。这个程序就是调用</span>AD<span style="font-family: 宋体">卡生产商提供的接口来控制机械设备的移动，里面用到了两个线程同时移动设备的情况。这是我认为最复杂的情况了。可悲，到现在都没有把多线程的使用搞透彻，只知道基本使用而已。整个程序就一个函数就算完成了，公司里面也就我知道一点</span>.net<span style="font-family: 宋体">皮毛，还是硬着头皮把它做完了，没想到那程序在使用过程中一直还不错。<br />
</span><span style="font-family: 宋体">&nbsp;&nbsp; 可能算运气好吧，浑浑噩噩的又进了第二家公司。一来分配的任务是做服务器调度软件开发。我的天！从来没做过这东西，怎么办呢？还好公司买的解决方案里面有一个用</span>C#<span style="font-family: 宋体">做的服务器程序，我不知道看了多少遍，终于莫清了来龙去脉。也没做过，只有依葫芦画瓢了。很是不巧，公司又只有我会点</span>C#,<span style="font-family: 宋体">没办法啊，要活命！还好这个东东催得不是很急，这画瓢一画就是</span>4<span style="font-family: 宋体">个月，哎，昨天联机调试转发数据成功了。大麻烦还在后面呢，图像数据的接受和转发还没做呢，郁闷。<br />
</span><span style="font-family: 宋体">&nbsp;&nbsp; 看起来算是比较成功了，但我总感觉我做的这东西不能算正真的软件。面向对象现在都弄清楚，但自己好像又很了解似的：无非就是把几个对象抽象出来组合组合，再继续组合就要用到高级点的设计模式了。其实我什么也不懂。<br />
</span><span style="font-family: 宋体">&nbsp;&nbsp;&nbsp;估计本人很愚笨，学</span>.net<span style="font-family: 宋体">这么久了还没做过像样点的软件。<br />
</span><span style="font-family: 宋体">&nbsp;&nbsp; 我也想把开发学好，一个人学真的很费劲，看的书已经不少了，为什么感觉没多大进步呢？也许是方法不对吧</span>,<span style="font-family: 宋体">再这样下去恐怕也没什么大的提升，但我想在技术的道路上走远一些，各位朋友：能给我提点建议吗？<br />
<br />
<span style="color: #ff0000">MSN: <a href="mailto:zhusimu@msn.com">zhusimu@msn.com</a></span></span>
<img src ="http://www.cnblogs.com/zhusimu/aggbug/1240816.html?type=1" width = "1" height = "1" /><br><br><a href="http://news.cnblogs.com/n/43597/" target="_blank">[新闻]推波助澜 微软推出“I'm a PC”商店</a><br/><a href="http://www.cnblogs.com" target="_blank">博客园首页</a>&nbsp;<a href="http://space.cnblogs.com" target="_blank">社区</a>&nbsp;<a href="http://news.cnblogs.com" target="_blank">新闻频道</a>&nbsp;<a href="http://space.cnblogs.com/group.htm" target="_blank">小组</a>&nbsp;<a href="http://space.cnblogs.com/q" target="_blank">博问</a>&nbsp;<a href="http://wz.cnblogs.com/" target="_blank">网摘</a>&nbsp;<a href="http://space.cnblogs.com/ing" target="_blank">闪存</a>]]></description></item><item><title>姑且喊它OptionForm</title><link>http://www.cnblogs.com/zhusimu/archive/2008/06/26/JackZhu.html</link><dc:creator>Simens</dc:creator><author>Simens</author><pubDate>Thu, 26 Jun 2008 14:20:00 GMT</pubDate><guid>http://www.cnblogs.com/zhusimu/archive/2008/06/26/JackZhu.html</guid><wfw:comment>http://www.cnblogs.com/zhusimu/comments/1230740.html</wfw:comment><comments>http://www.cnblogs.com/zhusimu/archive/2008/06/26/JackZhu.html#Feedback</comments><slash:comments>12</slash:comments><wfw:commentRss>http://www.cnblogs.com/zhusimu/comments/commentRss/1230740.html</wfw:commentRss><trackback:ping>http://www.cnblogs.com/zhusimu/services/trackbacks/1230740.html</trackback:ping><description><![CDATA[摘要: 看到迅雷配置窗体，Alcohol 120%的配置也有这样的窗体，就连vs里面的这种布局的窗体都很多，不知道叫什么名字（各位大牛不要笑我啊），我暂且叫它Optionform或者SettingForm，感觉这种窗体还不不错，我有点想做一个才冲动了，我先来试试看：在网上东找西找发现左边是一个treeview右边是一个panel，它的原理是点击左边树节点右边显示相关内容到panel里面，但是这里是显示的另&nbsp;&nbsp;<a href='http://www.cnblogs.com/zhusimu/archive/2008/06/26/JackZhu.html'>阅读全文</a><img src ="http://www.cnblogs.com/zhusimu/aggbug/1230740.html?type=1" width = "1" height = "1" /><br><br><a href="http://news.cnblogs.com/n/43596/" target="_blank">[新闻]火狐中国版正式发布</a><br/><a href="http://www.cnblogs.com" target="_blank">博客园首页</a>&nbsp;<a href="http://space.cnblogs.com" target="_blank">社区</a>&nbsp;<a href="http://news.cnblogs.com" target="_blank">新闻频道</a>&nbsp;<a href="http://space.cnblogs.com/group.htm" target="_blank">小组</a>&nbsp;<a href="http://space.cnblogs.com/q" target="_blank">博问</a>&nbsp;<a href="http://wz.cnblogs.com/" target="_blank">网摘</a>&nbsp;<a href="http://space.cnblogs.com/ing" target="_blank">闪存</a>]]></description></item></channel></rss>