首页 > 学院 > 开发设计 > 正文

WinForm中的ListBox组件编程(1)

2019-11-17 05:12:51
字体:
来源:转载
供稿:网友
 ListBox组件是一个程序设计中经常使用到的组件,在Visual C#和Visual Basic .Net程序中使用这个组件,必须要在程序中导入.Net FrameWork SDK中名称空间System.Windows.Forms,因为在System.Windows.Forms名称空间中定义了这个组件。在asp.net的Web页面中,ListBox组件是作为一个服务器端组件的形式出现的,所谓服务器端组件就是这些组件是在服务器端存在的。本文就是来介绍ListBox组件在ASP.NET的Web页面中的具体使用和操作方法。

一. 如何在ASP.NET页面中定义一个ListBox组件: 

在ASP.NET页面中创建一个ListBox组件的语法如下:

<asp:ListBox Id = "MyListBox" runat = "server" >

<asp:ListItem Value = "1" >第一个条目</asp:ListItem >

<asp:ListItem Value = "2" >第二个条目</asp:ListItem >

注释:这里还可以加入类似上面的若干条目

.....

</asp:ListBox >

在Web页面中执行上面的语句就可以产生一个名称为"MyListBox",包含若干条目的ListBox组件。

二. ListBox组件中常用的属性:

我们通过以下表格来说明ListBox组件的一些常用的属性:

属性名称 属性代表的意义 SelectionMode 组件中条目的选择的类型即:多选、单选。Single,Multiple Rows 此组件显示总共多少行 Selected 检测条目十分被选中 SelectedItem 返回的类型是ListItem,获得组件中被选择的条目 Count 组件中条目的总数 SelectedIndex 组件中被选择的条目的索引值 Items 泛指组件中所有的条目,每一个条目的类型都是ListItem

三. 通过一个例子来把握ListBox组件在ASP.NET页面中的具体用法:

在下面介绍ListBox组件在ASP.NET中的使用方法的时候,程序采用的程序设计语言是Visual C#。

(1).如何在ListBox组件添加新的条目:

通过以下语句就可以在名称为lstItem的ListBox组件中增加一个名称为"Sample"的条目:

lstItem . Items . Add ( new ListItem ( "Sample" ) ) 

(2).如何在ListBox组件中删除指定的条目:

下列语句就是删除名称为lstItem的ListBox组件中的选定的一个条目:

  lstItem . Items . Remove ( lstItem . SelectedItem )

(3).如何在组件中移动指向条目的指针: 

移动条目的指针主要有四种方式:至首条目、至尾条目、下一条、上一条。在程序设计中主要是通过操作组件的Count和SelectedIndex属性来实现以上四种方式的。以下就是具体实现这四种方式的程序代码:

//按钮"至首条"事件处理程序

if ( sender == First )

{

if ( lstItem . Items . Count > 0 )

{

lstItem . SelectedIndex = 0 ;

}

}

//按钮"至尾条"事件处理程序

if ( sender == Last )

{

if ( lstItem . Items . Count > 0 )

{

lstItem . SelectedIndex = lstItem . Items . Count - 1 ;

}

}

//按钮"上一条"事件处理程序

if ( sender == PRev )

{

if ( lstItem . SelectedIndex > 0 )

{

lstItem . SelectedIndex = lstItem . SelectedIndex - 1 ;

}

}

//按钮"下一条"事件处理程序

if ( sender == Next )

{

if ( lstItem . SelectedIndex < lstItem . Items . Count - 1 )

{

lstItem . SelectedIndex = lstItem . SelectedIndex + 1 ;

} }

(4).如何实现组件中的指定条目的移位: 

移位包括二种,其一是向上移位,其二是向下移位。程序中具体的实现思路是:创建一个ListItem对象,并把要移位指定的条目中的内容先暂放在此新建的这个对象中。假如选定的是向上移位,就把当前选定的条目的上一个条目的值赋值给当前选定的条目,然后把刚才新建的对象的值,再赋值给选定条目的上一个条目,完成条目的向上移位操作。对于向下移位,可以仿效上面的做法,但和上面做法的主要区别在于不是选定条目的上一个条目了,而是选定条目的下一个条目。下列语句就是就是实现这种思路的具体的程序代码:


//按钮"向上移位"和"向下移位"事件处理程序

if ( ( sender == Up && lstItem . SelectedIndex > 0 ) ( sender == Down && lstItem . SelectedIndex < lstItem . Items . Count - 1 ) )

{

int offset ;

if ( sender == Up )

{

offset = -1 ;

}

else

{

offset = 1 ;

}

ListItem lstTemp = new ListItem ( lstItem . SelectedItem . Text , lstItem . SelectedItem . Value ) ;

lstItem . Items [ lstItem.SelectedIndex ] .Text = lstItem . Items [ lstItem . SelectedIndex + offset ] . Text ;

lstItem . Items [ lstItem . SelectedIndex ] . Value = lstItem . Items [ lstItem . SelectedIndex + offset ] . Value ;

lstItem . Items [ lstItem . SelectedIndex + offset ] . Text = lstTemp . Text ;

lstItem . Items [ lstItem . SelectedIndex + offset ] . Value = lstTemp . Value ;

lstItem . SelectedIndex = lstItem . SelectedIndex + offset ;

}  ListBox组件是一个程序设计中经常使用到的组件,在Visual C#和Visual Basic .Net程序中使用这个组件,必须要在程序中导入.Net FrameWork SDK中名称空间System.Windows.Forms,因为在System.Windows.Forms名称空间中定义了这个组件。在ASP.NET的Web页面中,ListBox组件是作为一个服务器端组件的形式出现的,所谓服务器端组件就是这些组件是在服务器端存在的。本文就是来介绍ListBox组件在ASP.NET的Web页面中的具体使用和操作方法。

一. 如何在ASP.NET页面中定义一个ListBox组件: 

在ASP.NET页面中创建一个ListBox组件的语法如下:

<asp:ListBox Id = "MyListBox" runat = "server" >

<asp:ListItem Value = "1" >第一个条目</asp:ListItem >

<asp:ListItem Value = "2" >第二个条目</asp:ListItem >

注释:这里还可以加入类似上面的若干条目

.....

</asp:ListBox >

在Web页面中执行上面的语句就可以产生一个名称为"MyListBox",包含若干条目的ListBox组件。

二. ListBox组件中常用的属性:

我们通过以下表格来说明ListBox组件的一些常用的属性:

属性名称 属性代表的意义 SelectionMode 组件中条目的选择的类型即:多选、单选。Single,Multiple Rows 此组件显示总共多少行 Selected 检测条目十分被选中 SelectedItem 返回的类型是ListItem,获得组件中被选择的条目 Count 组件中条目的总数 SelectedIndex 组件中被选择的条目的索引值 Items 泛指组件中所有的条目,每一个条目的类型都是ListItem

三. 通过一个例子来把握ListBox组件在ASP.NET页面中的具体用法:

在下面介绍ListBox组件在ASP.NET中的使用方法的时候,程序采用的程序设计语言是Visual C#。

(1).如何在ListBox组件添加新的条目:

通过以下语句就可以在名称为lstItem的ListBox组件中增加一个名称为"Sample"的条目:

lstItem . Items . Add ( new ListItem ( "Sample" ) ) 

(2).如何在ListBox组件中删除指定的条目:

下列语句就是删除名称为lstItem的ListBox组件中的选定的一个条目:

  lstItem . Items . Remove ( lstItem . SelectedItem )

(3).如何在组件中移动指向条目的指针: 

移动条目的指针主要有四种方式:至首条目、至尾条目、下一条、上一条。在程序设计中主要是通过操作组件的Count和SelectedIndex属性来实现以上四种方式的。以下就是具体实现这四种方式的程序代码:

//按钮"至首条"事件处理程序

if ( sender == First )

{

if ( lstItem . Items . Count > 0 )

{

lstItem . SelectedIndex = 0 ;

}

}

//按钮"至尾条"事件处理程序

if ( sender == Last )

{

if ( lstItem . Items . Count > 0 )

{

lstItem . SelectedIndex = lstItem . Items . Count - 1 ;

}

}

//按钮"上一条"事件处理程序

if ( sender == Prev )

{

if ( lstItem . SelectedIndex > 0 )

{

lstItem . SelectedIndex = lstItem . SelectedIndex - 1 ;

}

}

//按钮"下一条"事件处理程序

if ( sender == Next )

{

if ( lstItem . SelectedIndex < lstItem . Items . Count - 1 )

{

lstItem . SelectedIndex = lstItem . SelectedIndex + 1 ;

} }

(4).如何实现组件中的指定条目的移位: 

移位包括二种,其一是向上移位,其二是向下移位。程序中具体的实现思路是:创建一个ListItem对象,并把要移位指定的条目中的内容先暂放在此新建的这个对象中。假如选定的是向上移位,就把当前选定的条目的上一个条目的值赋值给当前选定的条目,然后把刚才新建的对象的值,再赋值给选定条目的上一个条目,完成条目的向上移位操作。对于向下移位,可以仿效上面的做法,但和上面做法的主要区别在于不是选定条目的上一个条目了,而是选定条目的下一个条目。下列语句就是就是实现这种思路的具体的程序代码:


//按钮"向上移位"和"向下移位"事件处理程序

if ( ( sender == Up && lstItem . SelectedIndex > 0 ) ( sender == Down && lstItem . SelectedIndex < lstItem . Items . Count - 1 ) )

{

int offset ;

if ( sender == Up )

{

offset = -1 ;

}

else

{

offset = 1 ;

}

ListItem lstTemp = new ListItem ( lstItem . SelectedItem . Text , lstItem . SelectedItem . Value ) ;

lstItem . Items [ lstItem.SelectedIndex ] .Text = lstItem . Items [ lstItem . SelectedIndex + offset ] . Text ;

lstItem . Items [ lstItem . SelectedIndex ] . Value = lstItem . Items [ lstItem . SelectedIndex + offset ] . Value ;

lstItem . Items [ lstItem . SelectedIndex + offset ] . Text = lstTemp . Text ;

lstItem . Items [ lstItem . SelectedIndex + offset ] . Value = lstTemp . Value ;

lstItem . SelectedIndex = lstItem . SelectedIndex + offset ;

} QQread.com 推出游戏功略 http://www.qqread.com/netgame/game/index.Html 魔兽世界 跑跑卡丁车 街头篮球 水浒Q传 龙与地下城OL 征服  轩辕剑5 FIFA07 热血江湖 大唐风云 梦幻西游 武林外传

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表