100165498.htm
来自「C#高级编程(第三版),顶死你们。。 。up」· HTM 代码 · 共 365 行 · 第 1/4 页
HTM
365 行
<p class="2" style="MARGIN-LEFT: 21.45pt; FTEL: 18.45pt"><span lang="EN-US"> this.textTitle.AccessibleDescription = </span></p>
<p class="2" style="MARGIN-LEFT: 21.45pt; FTEL: 18.45pt"><span lang="EN-US"> resources.GetString("textTitle.AccessibleDescription");</span></p>
<p class="2" style="MARGIN-LEFT: 21.45pt; FTEL: 18.45pt"><span lang="EN-US"> this.textTitle.AccessibleName = </span></p>
<p class="2" style="MARGIN-LEFT: 21.45pt; FTEL: 18.45pt"><span lang="EN-US"> resources.GetString("textTitle.AccessibleName");</span></p>
<p class="2" style="MARGIN-LEFT: 21.45pt; FTEL: 18.45pt"><span lang="EN-US"> this.textTitle.Anchor = ((System.Windows.Forms.AnchorStyles) </span></p>
<p class="2" style="MARGIN-LEFT: 21.45pt; FTEL: 18.45pt"><span lang="EN-US"> (resources.GetObject("textTitle.Anchor")));</span></p>
<p class="2" style="MARGIN-LEFT: 21.45pt; FTEL: 18.45pt"><span lang="EN-US"> this.textTitle.AutoSize = ((bool) </span></p>
<p class="2" style="MARGIN-LEFT: 21.45pt; FTEL: 18.45pt"><span lang="EN-US"> (resources.GetObject("textTitle.AutoSize")));</span></p>
<p class="2" style="MARGIN-LEFT: 21.45pt; FTEL: 18.45pt"><span lang="EN-US"> this.textTitle.BackgroundImage = ((System.Drawing.Image) </span></p>
<p class="2" style="MARGIN-LEFT: 21.45pt; FTEL: 18.45pt"><span lang="EN-US"> (resources.GetObject("textTitle.BackgroundImage")));</span></p>
<p class="2" style="MARGIN-LEFT: 21.45pt; FTEL: 18.45pt"><span lang="EN-US"> this.textTitle.Dock = ((System.Windows.Forms.DockStyle)</span></p>
<p class="2" style="MARGIN-LEFT: 21.45pt; FTEL: 18.45pt"><span lang="EN-US"> (resources.GetObject("textTitle.Dock")));</span></p>
<p class="2" style="MARGIN-LEFT: 21.45pt; FTEL: 18.45pt"><span lang="EN-US"> this.textTitle.Enabled = ((bool)</span></p>
<p class="2" style="MARGIN-LEFT: 21.45pt; FTEL: 18.45pt"><span lang="EN-US"> (resources.GetObject("textTitle.Enabled")));</span></p>
<p class="2" style="MARGIN-LEFT: 21.45pt; FTEL: 18.45pt"><span lang="EN-US"> this.textTitle.Font = ((System.Drawing.Font)</span></p>
<p class="2" style="MARGIN-LEFT: 21.45pt; FTEL: 18.45pt"><span lang="EN-US"> (resources.GetObject("textxTitle.Font")));</span></p>
<p class="2" style="MARGIN-LEFT: 21.45pt; FTEL: 18.45pt"><span lang="EN-US"> this.textTitle.ImeMode = ((System.Windows.Forms.ImeMode)</span></p>
<p class="2" style="MARGIN-LEFT: 21.45pt; FTEL: 18.45pt"><span lang="EN-US"> (resources.GetObject("textTitle.ImeMode")));</span></p>
<p class="2" style="MARGIN-LEFT: 21.45pt; FTEL: 18.45pt"><span lang="EN-US"> this.textTitle.Location = ((System.Drawing.Point)</span></p>
<p class="2" style="MARGIN-LEFT: 21.45pt; FTEL: 18.45pt"><span lang="EN-US"> (resources.GetObject("textTitle.Location")));</span></p>
<p class="2" style="MARGIN-LEFT: 21.45pt; FTEL: 18.45pt"><span lang="EN-US"> this.textTitle.MaxLength = ((int) </span></p>
<p class="2" style="MARGIN-LEFT: 21.45pt; FTEL: 18.45pt"><span lang="EN-US"> (resources.GetObject("textTitle.MaxLength")));</span></p>
<p class="2" style="MARGIN-LEFT: 21.45pt; FTEL: 18.45pt"><span lang="EN-US"> this.textTitle.Multiline = ((bool)</span></p>
<p class="2" style="MARGIN-LEFT: 21.45pt; FTEL: 18.45pt"><span lang="EN-US"> (resources.GetObject("textTitle.Multiline")));</span></p>
<p class="2" style="MARGIN-LEFT: 21.45pt; FTEL: 18.45pt"><span lang="EN-US"> this.textTitle.Name = "textTitle";</span></p>
<p class="2" style="MARGIN-LEFT: 21.45pt; FTEL: 18.45pt"><span lang="EN-US"> this.textTitle.PasswordChar = ((char)</span></p>
<p class="2" style="MARGIN-LEFT: 21.45pt; FTEL: 18.45pt"><span lang="EN-US"> (resources.GetObject("textTitle.PasswordChar")));</span></p>
<p class="2" style="MARGIN-LEFT: 21.45pt; FTEL: 18.45pt"><span lang="EN-US"> this.textTitle.RightToLeft = ((System.Windows.Forms.RightToLeft)</span></p>
<p class="2" style="MARGIN-LEFT: 21.45pt; FTEL: 18.45pt"><span lang="EN-US"> (resources.GetObject("textTitle.RightToLeft")));</span></p>
<p class="2" style="MARGIN-LEFT: 21.45pt; FTEL: 18.45pt"><span lang="EN-US"> this.textTitle.ScrollBars = ((System.Windows.Forms.ScrollBars)</span></p>
<p class="2" style="MARGIN-LEFT: 21.45pt; FTEL: 18.45pt"><span lang="EN-US"> (resources.GetObject("textTitle.ScrollBars")));</span></p>
<p class="2" style="MARGIN-LEFT: 21.45pt; FTEL: 18.45pt"><span lang="EN-US"> this.textTitle.Size = ((System.Drawing.Size)</span></p>
<p class="2" style="MARGIN-LEFT: 21.45pt; FTEL: 18.45pt"><span lang="EN-US"> (resources.GetObject("textTitle.Size")));</span></p>
<p class="2" style="MARGIN-LEFT: 21.45pt; FTEL: 18.45pt"><span lang="EN-US"> this.textTitle.TabIndex = ((int)</span></p>
<p class="2" style="MARGIN-LEFT: 21.45pt; FTEL: 18.45pt"><span lang="EN-US"> (resources.GetObject("textTitle.TabIndex")));</span></p>
<p class="2" style="MARGIN-LEFT: 21.45pt; FTEL: 18.45pt"><span lang="EN-US"> this.textTitle.Text = resources.GetString("textTitle.Text");</span></p>
<p class="2" style="MARGIN-LEFT: 21.45pt; FTEL: 18.45pt"><span lang="EN-US"> this.textTitle.TextAlign = </span></p>
<p class="2" style="MARGIN-LEFT: 21.45pt; FTEL: 18.45pt"><span lang="EN-US"> ((System.Windows.Forms.HorizontalAlignment)</span></p>
<p class="2" style="MARGIN-LEFT: 21.45pt; FTEL: 18.45pt"><span lang="EN-US"> (resources.GetObject("textTitle.TextAlign")));</span></p>
<p class="2" style="MARGIN-LEFT: 21.45pt; FTEL: 18.45pt"><span lang="EN-US"> this.textTitle.Visible = ((bool)</span></p>
<p class="2" style="MARGIN-LEFT: 21.45pt; FTEL: 18.45pt"><span lang="EN-US"> (resources.GetObject("textTitle.Visible")));</span></p>
<p class="2" style="MARGIN-LEFT: 21.45pt; FTEL: 18.45pt"><span lang="EN-US"> this.textTitle.WordWrap = ((bool)</span></p>
<p class="2" style="MARGIN-TOP: 0cm; MARGIN-LEFT: 21.45pt; MARGIN-RIGHT: 0cm; FTEL: 18.45pt"><span lang="EN-US"> (resources.GetObject("textTitle.WordWrap")));</span></p>
<p class="MsoNormal" style="LINE-HEIGHT: 17.6pt"><span style="FONT-FAMILY: 宋体">资源管理器是从哪里获取的数据?在把</span><span lang="EN-US">Localizable</span><span style="FONT-FAMILY: 宋体">属性设置为</span><span lang="EN-US">true</span><span style="FONT-FAMILY: 宋体">时,就生成了一个资源文件</span><span lang="EN-US">BookOfTheDay.resX</span><span style="FONT-FAMILY: 宋体">。在这个文件中,首先是找到</span><span lang="EN-US">XML</span><span style="FONT-FAMILY: 宋体">资源的模式,接着是找到窗体中的所有元素:</span><span lang="EN-US">Type</span><span style="FONT-FAMILY: 宋体">、</span><span lang="EN-US">Text</span><span style="FONT-FAMILY: 宋体">、</span><span lang="EN-US">Location</span><span style="FONT-FAMILY: 宋体">、</span><span lang="EN-US">TabIndex</span><span style="FONT-FAMILY: 宋体">等。</span></p>
<p class="MsoNormal" style="LINE-HEIGHT: 17.6pt"><span style="FONT-FAMILY: 宋体">下面的</span><span lang="EN-US">XML</span><span style="FONT-FAMILY: 宋体">片段说明了</span><span lang="EN-US">textBoxTitle </span><span style="FONT-FAMILY: 宋体">的几个属性:</span><span lang="EN-US">Location</span><span style="FONT-FAMILY: 宋体">属性的值是</span><span lang="EN-US">24 152</span><span style="FONT-FAMILY: 宋体">,</span><span lang="EN-US">TabIndex</span><span style="FONT-FAMILY: 宋体">属性的值是</span><span lang="EN-US">2</span><span style="FONT-FAMILY: 宋体">,</span><span lang="EN-US">Text</span><span style="FONT-FAMILY: 宋体">属性设置为</span><span lang="EN-US">Professional</span><span lang="EN-US" style="FONT-FAMILY: 'Baskerville BE Regular'; LETTER-SPACING: 0.2pt"> </span><span lang="EN-US">C#</span><span style="FONT-FAMILY: 宋体">等。对于每个值,还存储了值的类型。例如,</span><span lang="EN-US">Location </span><span style="FONT-FAMILY: 宋体">的类型是</span><span lang="EN-US">System.Drawing.Point</span><span style="FONT-FAMILY: 宋体">,这个类在程序集</span><span lang="EN-US">System.Drawing</span><span style="FONT-FAMILY: 宋体">中。</span></p>
<p class="MsoNormal" style="LINE-HEIGHT: 17.6pt"><span style="FONT-FAMILY: 宋体">为什么位置和大小也存储在这个</span><span lang="EN-US">XML</span><span style="FONT-FAMILY: 宋体">文件中?在转换时,许多字符串都会有完全不同的大小,不再适合于原来的位置。当把位置和大小都存储在资源文件中后,需要进行本地化的位置和大小也都存储在这些文件中,从而与</span><span lang="EN-US">C#</span><span style="FONT-FAMILY: 宋体">代码分开:</span><span lang="EN-US"> </span></p>
<p class="2" style="MARGIN-TOP: 8.15pt; MARGIN-LEFT: 21.45pt; MARGIN-RIGHT: 0cm; FTEL: 18.45pt"><span lang="EN-US"> <data FTEL="textTitle.Location" type="System.Drawing.Point, System.Drawing,</span></p>
<p class="2" style="MARGIN-LEFT: 21.45pt; LINE-HEIGHT: 15pt; FTEL: 18.45pt"><span lang="EN-US"> Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"></span></p>
<p class="2" style="MARGIN-LEFT: 21.45pt; LINE-HEIGHT: 15pt; FTEL: 18.45pt"><span lang="EN-US"> <value>24, 152</value></span></p>
<p class="2" style="MARGIN-LEFT: 21.45pt; LINE-HEIGHT: 15pt; FTEL: 18.45pt"><span lang="EN-US"> </data></span></p>
<p class="2" style="MARGIN-LEFT: 21.45pt; LINE-HEIGHT: 15pt; FTEL: 18.45pt"><span lang="EN-US"> <data FTEL="textTitle.RightToLeft" type="System.Windows.Forms. RightToLeft,</span></p>
<p class="2" style="MARGIN-LEFT: 21.45pt; FTEL: 18.45pt"><span lang="EN-US"> System.Windows.Forms, Version=1.0.5000.0, Culture=neutral, </span></p>
<p class="2" style="MARGIN-LEFT: 21.45pt; FTEL: 18.45pt"><span lang="EN-US"> PublicKeyToken=b77a5c561934e089"></span></p>
<p class="2" style="MARGIN-LEFT: 21.45pt; LINE-HEIGHT: 15pt; FTEL: 18.45pt"><span lang="EN-US"> <value>Inherit</value></span></p>
<p class="2" style="MARGIN-LEFT: 21.45pt; LINE-HEIGHT: 15pt; FTEL: 18.45pt"><span lang="EN-US"> </data></span></p>
<p class="2" style="MARGIN-LEFT: 21.45pt; LINE-HEIGHT: 15pt; FTEL: 18.45pt"><span lang="EN-US"> <data FTEL="textTitle.Size" type="System.Drawing.Point, System.Drawing,</span></p>
<p class="2" style="MARGIN-LEFT: 21.45pt; LINE-HEIGHT: 15pt; FTEL: 18.45pt"><span lang="EN-US"> Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"></span></p>
<p class="2" style="MARGIN-LEFT: 21.45pt; LINE-HEIGHT: 15pt; FTEL: 18.45pt"><span lang="EN-US"> <value>256. 20</value></span></p>
<p class="2" style="MARGIN-LEFT: 21.45pt; LINE-HEIGHT: 15pt; FTEL: 18.45pt"><span lang="EN-US"> </data></span></p>
<p class="2" style="MARGIN-LEFT: 21.45pt; LINE-HEIGHT: 15pt; FTEL: 18.45pt"><span lang="EN-US"> <data FTEL="textTitle.TabIndex" type="System.Int32, mscorlib, </span></p>
<p class="2" style="MARGIN-LEFT: 21.45pt; LINE-HEIGHT: 15pt; FTEL: 18.45pt"><span lang="EN-US"> Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"></span></p>
<p class="2" style="MARGIN-LEFT: 21.45pt; LINE-HEIGHT: 15pt; FTEL: 18.45pt"><span lang="EN-US"> <value>2</value></span></p>
<p class="2" style="MARGIN-LEFT: 21.45pt; LINE-HEIGHT: 15pt; FTEL: 18.45pt"><span lang="EN-US"> </data></span></p>
<p class="2" style="MARGIN-LEFT: 21.45pt; LINE-HEIGHT: 15pt; FTEL: 18.45pt"><span lang="EN-US"> <data FTEL="textTitle.Text"></span></p>
<p class="2" style="MARGIN-LEFT: 21.45pt; LINE-HEIGHT: 15pt; FTEL: 18.45pt"><span lang="EN-US"> <value>Professional C#</value></span></p>
<p class="2" style="MARGIN-LEFT: 21.45pt; LINE-HEIGHT: 15pt; FTEL: 18.45pt"><span lang="EN-US"> </data></span></p>
<p class="2" style="MARGIN-LEFT: 21.45pt; LINE-HEIGHT: 15pt; FTEL: 18.45pt"><span lang="EN-US"> <data FTEL="textTitle.TextAlign" </span></p>
<p class="2" style="MARGIN-LEFT: 21.45pt; LINE-HEIGHT: 15pt; FTEL: 18.45pt"><span lang="EN-US"> type="System.Windows.Forms.HorizontalAlignment, System.Windows.Forms, </span></p>
<p class="2" style="MARGIN-LEFT: 21.45pt; LINE-HEIGHT: 15pt; FTEL: 18.45pt"><span lang="EN-US"> Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"></span></p>
<p class="2" style="MARGIN-LEFT: 21.45pt; LINE-HEIGHT: 15pt; FTEL: 18.45pt"><span lang="EN-US"> <value>Left</value></span></p>
<p class="2" style="MARGIN-LEFT: 21.45pt; LINE-HEIGHT: 15pt; FTEL: 18.45pt"><span lang="EN-US"> </data></span></p>
<p class="2" style="MARGIN-LEFT: 21.45pt; LINE-HEIGHT: 15pt; FTEL: 18.45pt"><span lang="EN-US"> <data FTEL="textTitle.Visible" type="System.Boolean, mscorlib, </span></p>
<p class="2" style="MARGIN-LEFT: 21.45pt; LINE-HEIGHT: 15pt; FTEL: 18.45pt"><span lang="EN-US"> Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"></span></p>
<p class="2" style="MARGIN-LEFT: 21.45pt; LINE-HEIGHT: 15pt; FTEL: 18.45pt"><span lang="EN-US"> <value>True</value></span></p>
<p class="2" style="MARGIN-TOP: 0cm; MARGIN-LEFT: 21.45pt; MARGIN-RIGHT: 0cm; FTEL: 18.45pt"><span lang="EN-US"> </data></span></p>
<p class="MsoNormal" style="LINE-HEIGHT: 16pt"><span style="FONT-FAMILY: 宋体">在修改其中一些资源值时,不需要直接使用</span><span lang="EN-US">XML</span><span style="FONT-FAMILY: 宋体">代码来修改。我们可以在</span><span lang="EN-US">Visual Studio </span><span style="FONT-FAMILY: 宋体">设计器中直接修改这些资源。只要修改窗体的</span><span lang="EN-US">Language </span><span style="FONT-FAMILY: 宋体">属性和一些窗体元素的属性,就会为指定的语言生成一个新资源。把</span><span lang="EN-US">Language </span><span style="FONT-FAMILY: 宋体">属性设置为</span><span lang="EN-US">German </span><span style="FONT-FAMILY: 宋体">,就会创建德国版本的窗体。把</span><span lang="EN-US">Language </span><span style="FONT-FAMILY: 宋体">属性设置为</span><span lang="EN-US">French</span><span style="FONT-FAMILY: 宋体">,就会创建法国版本的窗体。对于每种语言,都会生成一个属性已被修改的资源文件:</span><span lang="EN-US">BookOfTheDayForm.de.resX</span><span style="FONT-FAMILY: 宋体">和</span><span lang="EN-US">BookOfTheDayForm.fr.resX</span><span style="FONT-FAMILY: 宋体">。</span></p>
<p class="MsoNormal" style="LINE-HEIGHT: 16pt"><span style="FONT-FAMILY: 宋体">表</span><span lang="EN-US">17-3</span><span style="FONT-FAMILY: 宋体">是德国版本的窗体需要进行的修改。</span></p>
<p class="a5" style="MARGIN-TOP: 8.15pt"><span style="FONT-FAMILY: 黑体">表</span><span lang="EN-US"> 17-3</span></p>
<div align="center">
<table class="MsoNormalTable" style="MARGIN-LEFT: 5.55pt; BORDER-TOP-STYLE: none; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BORDER-COLLAPSE: collapse; BORDER-BOTTOM-STYLE: none" cellspacing="0" cellpadding="0" border="1">
<tbody>
<tr>
<td style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 9.9pt; BORDER-TOP: windowtext 1pt solid; PADDING-LEFT: 9.9pt; BORDER-LEFT-WIDTH: 1pt; BORDER-LEFT-COLOR: windowtext; PADDING-BOTTOM: 0cm; WIDTH: 219.7pt; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 1pt solid" valign="top" width="293">
<p class="a2"><span style="FONT-FAMILY: 黑体">德国</span><span lang="EN-US"> – </span><span style="FONT-FAMILY: 黑体">名称</span></p>
</td>
<td style="PADDING-RIGHT: 9.9pt; BORDER-TOP: windowtext 1pt solid; PADDING-LEFT: 9.9pt; PADDING-BOTTOM: 0cm; WIDTH: 217pt; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 1pt solid; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none" valign="top" width="289">
<p class="a2"><span style="FONT-FAMILY: 黑体">值</span></p>
</td>
</tr>
<tr>
<td style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 9.9pt; PADDING-LEFT: 9.9pt; PADDING-BOTTOM: 0cm; WIDTH: 219.7pt; BORDER-TOP-STYLE: none; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 1pt solid; BORDER-LEFT-STYLE: none" valign="top" width="293">
<p class="a4" style="MARGIN-LEFT: 10.7pt"><span lang="EN-US">$this.Text (</span><span style="FONT-FAMILY: 宋体">窗体的标题</span><span lang="EN-US">)</span></p>
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?