100165537.htm

来自「C#高级编程(第三版),顶死你们。。 。up」· HTM 代码 · 共 113 行

HTM
113
字号


<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head><title>
	
        19.3.3  ComboBox控件与ListBox控件
</title></head>
<body>
    <div class="area">

        

        <div class="col1">
            <div class="lineBlue">
            </div>
            <!-- title -->
            <div class="arcTitle">
                <h1>
                    <a href="../16">
                        C#高级编程(第3版)【全文连载】
                    </a>
                </h1>
                <div style="text-align: center; font-size: 15px">
                    <a href="100165537.htm">
                        19.3.3  ComboBox控件与ListBox控件
                    </a>
                </div>
                <div style="text-align: center; font-size: 15px">
                    <a class="url" href="../../default.htm">http://book.csdn.net/</a>
                    2006-10-13 14:41:00
                </div>
                <div style="margin: 0px auto; width: 700px; border: solid 1px #0b5f98;">
                    <div style="float: left; width: 16px; background-color: #0b5f98; color: White; padding: 1px;">
                        图书导读
                    </div>
                    <div style="float: right; width: 670px; text-align: left; line-height: 16pt; padding-left: 2px">
                        <!--导读-->
                        <h1 id="divCurrentNode" style="color: #b83507; width: 100%; text-align: left; font-size: 12px; padding-left: 2px">当前章节:<a href='100165537.htm'><font color='red'>19.3.3  ComboBox控件与ListBox控件</font></a></h1>
                        <div id="divRelateNode" style="padding-left: 2px">
                        <div style='float:left;width:49%'>·<a href='100165534.htm'>19.3  标准控件和组件</a></div><div style='float:right;width:49%'>·<a href='100165535.htm'>19.3.1  Button控件</a></div><div style='float:left;width:49%'>·<a href='100165536.htm'>19.3.2  CheckBox控件</a></div><div style='float:right;width:49%'>·<a href='100165538.htm'>19.3.4  DateTimePicker控件</a></div><div style='float:left;width:49%'>·<a href='100165539.htm'>19.3.5  ErrorProvider组件</a></div><div style='float:right;width:49%'>·<a href='100165540.htm'>19.3.6  HelpProvider组件</a></div></div>
                    </div>
                </div>
                </div>
            <!-- main -->
            <div id="main">
                <div id="text"> <link href="css.css" rel="stylesheet" type="text/css" /><h3 style="MARGIN-TOP: 8.15pt; MARGIN-LEFT: 0cm; MARGIN-RIGHT: 0cm; FTEL: 8.15pt"><span lang="EN-US">19.3.3&nbsp; ComboBox</span><span style="FONT-FAMILY: 黑体">控件与</span><span lang="EN-US">ListBox</span><span style="FONT-FAMILY: 黑体">控件</span></h3>
<p class="MsoNormal"><span lang="EN-US">ComboBox</span><span style="FONT-FAMILY: 宋体">和</span><span lang="EN-US">ListBox</span><span style="FONT-FAMILY: 宋体">都派生于</span><span lang="EN-US">ListControl</span><span style="FONT-FAMILY: 宋体">类。这个类提供了一些基本的列表管理功能。</span><span lang="EN-US">SelectedIndex</span><span style="FONT-FAMILY: 宋体">返回一个整数值,它对应于当前选中项目的索引。从列表中获取值有点困难,在给列表控件添加条目时,不仅可以添加字符串值,还可以添加任意类型的对象。如果要添加的条目不是字符串,就必须设置另外两个属性。第一个是</span><span lang="EN-US">DisplayMember</span><span style="FONT-FAMILY: 宋体">属性,这个设置告诉</span><span lang="EN-US">ListControl</span><span style="FONT-FAMILY: 宋体">在列表中显示对象的哪个属性。另一个是</span><span lang="EN-US">ValueMember</span><span style="FONT-FAMILY: 宋体">属性,它是要返回值的对象属性。例如,如果要使用</span><span lang="EN-US">Country</span><span style="FONT-FAMILY: 宋体">对象,它包含两个属性</span><span lang="EN-US">CountryName</span><span style="FONT-FAMILY: 宋体">和</span><span lang="EN-US">CountryAbbreviation</span><span style="FONT-FAMILY: 宋体">,就应把</span><span lang="EN-US">DisplayMember</span><span style="FONT-FAMILY: 宋体">设置为</span><span lang="EN-US">CountryName</span><span style="FONT-FAMILY: 宋体">属性,把</span><span lang="EN-US">ValueMember</span><span style="FONT-FAMILY: 宋体">设置为</span><span lang="EN-US">CountryAbbreviation</span><span style="FONT-FAMILY: 宋体">。在显示列表时,就会看到国家名称的列表,在使用</span><span lang="EN-US">SelectedValue</span><span style="FONT-FAMILY: 宋体">属性时,控件应返回列表中所选中国家的简称。</span></p>
<p class="MsoNormal"><span style="FONT-FAMILY: 宋体">如果访问</span><span lang="EN-US">Items</span><span style="FONT-FAMILY: 宋体">属性,就可以得到</span><span lang="EN-US">Country</span><span style="FONT-FAMILY: 宋体">对象。</span><span lang="EN-US">Items</span><span style="FONT-FAMILY: 宋体">属性在控件上执行。在</span><span lang="EN-US">ListBox</span><span style="FONT-FAMILY: 宋体">控件上,</span><span lang="EN-US">Items</span><span style="FONT-FAMILY: 宋体">属性返回</span><span lang="EN-US">ListBox.ObjectCollection</span><span style="FONT-FAMILY: 宋体">。这是一个可以通过索引器引用的对象集合。所以,要获取对象</span><span lang="EN-US">(</span><span style="FONT-FAMILY: 宋体">不是</span><span lang="EN-US">ValueMember</span><span style="FONT-FAMILY: 宋体">,而是对象本身</span><span lang="EN-US">)</span><span style="FONT-FAMILY: 宋体">,就可以使用下面的代码:</span></p>
<p class="2" style="MARGIN-TOP: 8.15pt; MARGIN-LEFT: 21.45pt; MARGIN-RIGHT: 0cm; FTEL: 18.45pt"><span lang="EN-US">obj = listBox1.Items[listBox1. SelectedIndex];</span></p>
<p class="MsoNormal"><span lang="EN-US">ComboBox</span><span style="FONT-FAMILY: 宋体">的</span><span lang="EN-US">Items</span><span style="FONT-FAMILY: 宋体">属性返回</span><span lang="EN-US">ComboBox.ObjectCollection</span><span style="FONT-FAMILY: 宋体">。</span><span lang="EN-US">ComboBox</span><span style="FONT-FAMILY: 宋体">组合了编辑控件和列表框。通过把一个</span><span lang="EN-US">DropDownStyle</span><span style="FONT-FAMILY: 宋体">枚举值传送给</span><span lang="EN-US">DropDownStyle</span><span style="FONT-FAMILY: 宋体">属性,就可以设置</span><span lang="EN-US">ComboBox</span><span style="FONT-FAMILY: 宋体">的样式。表</span><span lang="EN-US">19-2</span><span style="FONT-FAMILY: 宋体">列出了</span><span lang="EN-US">DropDownStyle</span><span style="FONT-FAMILY: 宋体">的各个值。</span></p>
<p class="MsoNormal"><span lang="EN-US">&nbsp;</span></p>
<p class="a5" style="MARGIN-TOP: 8.15pt"><span style="FONT-FAMILY: 黑体">表</span><span lang="EN-US">&nbsp; 19-2</span></p>
<table class="MsoNormalTable" style="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: 5.4pt; BORDER-TOP: windowtext 1pt solid; PADDING-LEFT: 5.4pt; BORDER-LEFT-WIDTH: 1pt; BORDER-LEFT-COLOR: windowtext; PADDING-BOTTOM: 0cm; WIDTH: 76.3pt; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 1pt solid" valign="top" width="102">
            <p class="a2"><span style="FONT-FAMILY: 黑体">值</span></p>
            </td>
            <td style="PADDING-RIGHT: 5.4pt; BORDER-TOP: windowtext 1pt solid; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; WIDTH: 365.35pt; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 1pt solid; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none" valign="top" width="487">
            <p class="a2"><span style="FONT-FAMILY: 黑体">说</span><span lang="EN-US">&nbsp;&nbsp;&nbsp; </span><span style="FONT-FAMILY: 黑体">明</span></p>
            </td>
        </tr>
        <tr>
            <td style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; WIDTH: 76.3pt; BORDER-TOP-STYLE: none; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 1pt solid; BORDER-LEFT-STYLE: none" valign="top" width="102">
            <p class="a4" style="MARGIN-LEFT: 10.7pt"><span lang="EN-US">DropDown</span></p>
            </td>
            <td style="PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; WIDTH: 365.35pt; BORDER-TOP-STYLE: none; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 1pt solid; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none" valign="top" width="487">
            <p class="a4" style="MARGIN-LEFT: 10.7pt"><span style="FONT-FAMILY: 宋体">组合框的文本部分是可以编辑的,用户可以输入值。用户必须单击箭头按钮,才能显示列表</span></p>
            </td>
        </tr>
        <tr>
            <td style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; WIDTH: 76.3pt; BORDER-TOP-STYLE: none; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 1pt solid; BORDER-LEFT-STYLE: none" valign="top" width="102">
            <p class="a4" style="MARGIN-LEFT: 10.7pt"><span lang="EN-US">DropDownList</span></p>
            </td>
            <td style="PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; WIDTH: 365.35pt; BORDER-TOP-STYLE: none; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 1pt solid; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none" valign="top" width="487">
            <p class="a4" style="MARGIN-LEFT: 10.7pt"><span style="FONT-FAMILY: 宋体">文本部分不能编辑。用户必须从列表中选择</span></p>
            </td>
        </tr>
        <tr>
            <td style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; WIDTH: 76.3pt; BORDER-TOP-STYLE: none; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 1pt solid; BORDER-LEFT-STYLE: none" valign="top" width="102">
            <p class="a4" style="MARGIN-LEFT: 10.7pt"><span lang="EN-US">Simple</span></p>
            </td>
            <td style="PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; WIDTH: 365.35pt; BORDER-TOP-STYLE: none; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 1pt solid; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none" valign="top" width="487">
            <p class="a4" style="MARGIN-LEFT: 10.7pt"><span style="FONT-FAMILY: 宋体">类似于</span><span lang="EN-US">DropDown</span><span style="FONT-FAMILY: 宋体">,但列表总是可见的</span></p>
            </td>
        </tr>
    </tbody>
</table>
<p class="MsoNormal"><span lang="EN-US">&nbsp;</span></p>
<p class="MsoNormal"><span style="FONT-FAMILY: 宋体">如果列表中的值比较宽,就可以使用</span><span lang="EN-US">DropDownWidth</span><span style="FONT-FAMILY: 宋体">属性改变控件下拉部分的宽度。</span><span lang="EN-US">MaxDropDownItems</span><span style="FONT-FAMILY: 宋体">属性设置在显示列表的下拉部分时的最大项目数。</span></p>
<p class="MsoNormal"><span lang="EN-US">FindString</span><span style="FONT-FAMILY: 宋体">和</span><span lang="EN-US">FindStringExact</span><span style="FONT-FAMILY: 宋体">方法是列表控件的另外两个有用的方法。</span><span lang="EN-US">FindString</span><span style="FONT-FAMILY: 宋体">在列表中查找以传入字符串开头的第一个字符串。</span><span lang="EN-US">FindStringExact</span><span style="FONT-FAMILY: 宋体">查找与传入字符串匹配的第一个字符串。它们都返回找到的值的索引,如果没有找到,就返回&ndash;</span><span lang="EN-US">1</span><span style="FONT-FAMILY: 宋体">。它们还可以将要搜索的起始索引整数作为参数。</span></p>
<p class="MsoNormal"><span style="FONT-FAMILY: 宋体">在列表控件中,最常用的事件是</span><span lang="EN-US">SelectedIndexChanged</span><span style="FONT-FAMILY: 宋体">和</span><span lang="EN-US">SelectedValueChanged</span><span style="FONT-FAMILY: 宋体">。这些事件是在用户从列表中选择新条目时发生。在列表中选择了新条目后,就可以修改窗体的其他方面,以匹配新选中的条目。例如,使用</span><span lang="EN-US">Country</span><span style="FONT-FAMILY: 宋体">列表,如果用户从列表中选择了一个新国家,就可以显示该国家的地图图像。</span></p></div>
                <!-- page -->
                <div class="page" style="text-align: center">
                    <a href="100165536.htm">上一页</a>&nbsp;&nbsp;&nbsp;<a href="index.html">首页</a>&nbsp;&nbsp;&nbsp;<a href="100165538.htm">下一页</a>
                </div>
                <div style="margin: 0px auto; width: 700px; border: solid 1px #0b5f98;">
                    <div style="float: left; width: 16px; background-color: #0b5f98; color: White; padding: 1px;">
                        图书导读
                    </div>
                    <div style="float: right; width: 670px; text-align: left; line-height: 16pt; padding-left: 2px">
                        <!--导读-->
                        <h1 id="divCurrentNode2" style="color: #b83507; width: 100%; text-align: left; font-size: 12px; padding-left: 2px">当前章节:<a href='100165537.htm'><font color='red'>19.3.3  ComboBox控件与ListBox控件</font></a></h1>
                        <div id="divRealteNod2" style="padding-left: 2px">
                        <div style='float:left;width:49%'>·<a href='100165534.htm'>19.3  标准控件和组件</a></div><div style='float:right;width:49%'>·<a href='100165535.htm'>19.3.1  Button控件</a></div><div style='float:left;width:49%'>·<a href='100165536.htm'>19.3.2  CheckBox控件</a></div><div style='float:right;width:49%'>·<a href='100165538.htm'>19.3.4  DateTimePicker控件</a></div><div style='float:left;width:49%'>·<a href='100165539.htm'>19.3.5  ErrorProvider组件</a></div><div style='float:right;width:49%'>·<a href='100165540.htm'>19.3.6  HelpProvider组件</a></div></div>
                    </div>
                </div>
                </div>
        </div>
</body>
</html>

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?