点击:0 楼主liukaiii(liukai_tang)2003-10-16 17:56:43 在 .NET技术 / C# 提问
如ListBox有a,b,c三项
要实现双击a就弹出一个对话框显示a,该响应哪个事件呢? 问题点数:0、回复次数:21
1 楼binbin2000(binbin)回复于 2003-10-16 19:01:59 得分 0
doubleclick
2 楼liukaiii(liukai_tang)回复于 2003-10-16 21:33:12 得分 0
那是整个控件的
我想要双击其中一条的事件
3 楼xjaifly(tiantian)回复于 2003-10-16 23:05:33 得分 0
关注!
4 楼liukaiii(liukai_tang)回复于 2003-10-17 09:23:38 得分 0
Zzzzz
5 楼shajie(笨鸟先飞)回复于 2003-10-17 09:50:26 得分 0
将控件的 AutoPostBack属性设置为true,然后在SelectedIndexChanged事件中,判断具体选择的是什么事件,再做具体的操作
//HTML代码
<asp:ListBox id="ListBox1" style="Z-INDEX: 104; LEFT: 224px; POSITION: absolute; TOP: 216px"
runat="server" Width="184px" AutoPostBack="True">
<asp:ListItem Value="34324">34324</asp:ListItem>
<asp:ListItem Value="2344">2344</asp:ListItem>
<asp:ListItem></asp:ListItem>
</asp:ListBox>
//响应事件
private void ListBox1_SelectedIndexChanged(object sender, System.EventArgs e)
{
if(ListBox2.SelectedIndex>-1)
this.Label1.Text=ListBox1.SelectedValue.ToString(); }
6 楼liukaiii(liukai_tang)回复于 2003-10-17 10:48:20 得分 0
有没有搞错
这还用你说呀
是双击时才发生的
而且是双击一个Item时
不是双击这个控件的任何部分
winForm下的
7 楼acewang(龍芯*Inside!)回复于 2003-10-17 10:59:21 得分 0
别人都是好心帮你,请楼主说话的时候注意言语
8 楼acewang(龍芯*Inside!)回复于 2003-10-17 11:04:51 得分 0
private void listBox1_DoubleClick(object sender, System.EventArgs e)
{
MessageBox.Show(listBox1.SelectedItem.ToString());
}
9 楼caozping(蓝贝)回复于 2003-10-17 11:24:03 得分 0
MouseEnter
MouseMove
MouseLeave
MouseHover
MouseDown
SelectedValueChanged
SelectedIndexChanged
MouseUp
DoubleClick
可以你要用的是 DoubleClick事件
private void listBox1_DoubleClick(object sender, System.EventArgs e)
{
string obj=sender.ToString();
}
可以取出双击的那一个项
10 楼digitalghost(数码幽灵)回复于 2003-10-17 12:08:27 得分 0
Observer模式????
11 楼liukaiii(liukai_tang)回复于 2003-10-17 16:42:17 得分 0
Zzzz
12 楼wolve(祝你生活愉快)回复于 2003-10-17 16:56:56 得分 0
在DoubleClick事件中判断当前选择的是哪个item就行了。item本身并不响应事件。
13 楼zb007(路在脚下)回复于 2003-10-17 18:19:07 得分 0
同意楼上的
14 楼feigehao(gaosou)回复于 2003-10-17 19:03:19 得分 0
up
15 楼smallgyy(被煮的螃蟹)回复于 2003-11-02 15:56:33 得分 0
private void ListBox1_SelectedIndexclick(object sender, System.EventArgs e)
16 楼wj2929(Rěй)回复于 2003-12-06 16:05:40 得分 0
private void listBox1_DoubleClick(object sender, System.EventArgs e)
{
MessageBox.Show(listBox1.Items[listBox1.SelectedIndex].ToString());
}
17 楼sealer()回复于 2004-01-14 11:15:09 得分 0
我的listBox没有DoubleClick事件,我是在vs.net里使用的。
请问是什么原因?
18 楼tianjue0921(天珏)回复于 2004-01-14 13:32:19 得分 0
windows里能用ListBox1_SelectedIndexChanged这个事件,但在webform不行
19 楼tianjue0921(天珏)回复于 2004-01-14 13:41:18 得分 0
不好意思其实也行的 在webform把那个什么autopostback设为true就行了
20 楼sealer()回复于 2004-01-14 15:07:26 得分 0
我的listBox没有DoubleClick事件,我是在vs.net里使用的。
请问是什么原因?
21 楼sealer()回复于 2004-01-14 15:07:52 得分 0
没有人能解决吗?
相关问题
|
为什么vb中的list的DblClick事件在转换成vb.net时,不能用DoubleClick?楼主boyzq007()2005-06-20 10:34:13 在 .NET技术 / VB.NET 提问
这是为什么?两者不都是鼠标双击的事件吗?
收获----我看msdn中解释说,要用SelectedIndexChanged 或 TextChanged 事件来代替DblClick事件。
但是这根Click事件的取代是一样的。如果一个程序中,既有click事件又有DblClick事件。
再装换成vb.net时,哪又应该怎么办呢?
谢谢! Private Sub ListBox1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles ListBox1.Click
Me.Text = "1"
End Sub
Private Sub ListBox1_DoubleClick(ByVal sender As Object, ByVal e As System.EventArgs) Handles ListBox1.DoubleClick
Me.Text = "2"
End Sub
有DoubleClick事件啊,只不过和VB原理一样,做DoubleClick前会先做Click。
^_^
Top
2 楼boyzq007()回复于 2005-06-21 10:03:15 得分 0 但是如果我想在双击之后关闭当前窗口,代码如下:
Private Sub ListBox1_DoubleClick(ByVal sender As Object, ByVal e As System.EventArgs) Handles ListBox1.DoubleClick
Me.Text = "2"
Me.Close()
End Sub
则肯定会出错!这是为什么呢?
Top
3 楼huangjianyou(小健)回复于 2005-06-21 11:13:13 得分 0 其实我觉得编程不一定在一条路上走,到达一个目的地可能有很多方法,我就没试过双击listbox而退出窗体的,通常我会用button。
刚才测试过,没出现错误。你说肯定会出错?
^_^
Top
4 楼boyzq007()回复于 2005-06-21 11:34:38 得分 0 因为要实现的业务逻辑不一样,所以实现起来也就不一样。
这里要实现的功能是:双击listbox中的一条记录,将这条记录传给另一个页面,而当前页面关闭。
就是这么简单。但是我在ListBox1_DoubleClick中调用Me.Close()是就会出错,
当然,不是Me.Close()的错误,是DoubleClick事件走完时出的错误。这个错误不会马上出现,
但你双击ListBox时,窗口关闭,大约在5-10秒之后,才会弹出错误信息!
不知道你说没出错,是一直没出错还是发现窗口关闭就停止程序了呢?
Top
5 楼boyzq007()回复于 2005-06-21 11:37:53 得分 0 我个人认为出错的原因可能是这样的:
当双击listbox,程序走到Me.Close()时,当前窗口被关闭。然后程序继续往下走,走到End Sub,
但是此时的窗口已经关闭,ListBox1已经不存在,所以才会出现错误。
我不知道是不是这个原因!
Top
6 楼huangjianyou(小健)回复于 2005-06-21 11:59:50 得分 0 将你的窗体设成MDI下的模式窗体,我试过没问题的:
Dim frm As New frmname
frm.ShowDialog()
frm.Close()
^_^
Top
7 楼alphaqxm(菜菜)回复于 2005-06-21 13:06:36 得分 0 看看程序里有没有Form的Closed或者是unLoad之类的事件,也可能是在那个里面出错了。
Top
8 楼yyyb(徐亮)回复于 2005-06-21 14:35:03 得分 0 try一下 看看具体什么错误啊
欢迎加入 VB.NET园地 QQ群 3177402 群的介绍及成员列表:http://group.qq.com/cgi-bin/selectGroup?browseGID=3177402&function=browse
|
|
如ListBox有a,b,c三项
要实现双击a就弹出一个对话框显示a,该响应哪个事件呢?
将控件的 AutoPostBack属性设置为true,然后在SelectedIndexChanged事件中,判断具体选择的是什么事件,再做具体的操作
//HTML代码
<asp:ListBox id="ListBox1" style="Z-INDEX: 104; LEFT: 224px; POSITION: absolute; TOP: 216px"
runat="server" Width="184px" AutoPostBack="True">
<asp:ListItem Value="34324">34324</asp:ListItem>
<asp:ListItem Value="2344">2344</asp:ListItem>
<asp:ListItem></asp:ListItem>
</asp:ListBox>
//响应事件
private void ListBox1_SelectedIndexChanged(object sender, System.EventArgs e)
{
if(ListBox2.SelectedIndex>-1)
this.Label1.Text=ListBox1.SelectedValue.ToString(); }
====================================================
====================================================
订阅免费电子杂志〈名人传记〉
每期发送电子图书,广读博览融汇贯通。阅读电子书时,请注意保护视力。╭○═○╮╭◎═◎╮╭●═●╮同步发行《名人传记简装版》简装版只包含附件联接地址,大小控制在80k以内。同时发送《热点》期刊
1 邮件订阅方式
向下面的邮件地址发一封信,邮件正文(不是标题)填写subscribe zhuanji
2.主页订阅
主页地址一
http://list.cn99.com/cgi-bin/getlsts?listname=zhuanji
主页地址二 http://yjxsuccess.blog.hexun.com/ |