2013-03-26 30 views
2

我試圖添加一個單擊事件到列表框,但由於某種原因,當我單擊我的列表框中的項目時沒有任何反應。C#將點擊事件添加到列表框

我的猜測,並從我讀過,代碼應該是這個樣子

private void listBox1_Click(object sender, EventArgs e) 
     { 
      //Code Ex. TextBox1.Text = "Success"; 
    } 

這雖然不是工作。任何人都知道如何讓這發生?不介意也不知道雙擊和其他點擊變化太...

+0

什麼平臺? – 2013-03-26 19:56:46

+0

顯示您的aspx標記請 – Pleun 2013-03-26 20:01:00

+0

我在Visual Studio 2010的窗口上編碼。 – 2013-03-26 20:09:32

回答

0

如果你想讓它觸發,當你在框中「點擊項目」,你爲什麼不試試SelectedIndexChanged呢?

+0

我會這樣做,但我真的想用雙擊。我只是想了解如何首先添加一個單擊事件。 – 2013-03-26 20:07:25

+0

選擇索引更改dosn't函數我希望它,但它比嘗試獲取列表框項目上的單擊事件更簡單。 – 2013-03-26 20:26:31

1

Webform? 如果是這樣,你檢查'autopostback'= true?

例與selectindexchanged:

<asp:ListBox ID="ListBox1" runat="server" AutoPostBack="True" OnSelectedIndexChanged="ListBox1_SelectedIndexChanged"> 
    <asp:ListItem>a</asp:ListItem> 
    <asp:ListItem>b</asp:ListItem> 
</asp:ListBox> 

protected void ListBox1_SelectedIndexChanged(object sender, EventArgs e) 
{ 

} 

這將只要用戶點擊一個項目進行回傳。 我不確定這種東西有雙擊。

+0

呵呵?那是超出我的知識。 – 2013-03-26 20:07:51

+0

如果值發生更改,Autopostback會強制發回帖子。可惜我不確定它會不會與點擊一起工作,但它與SelectedIndexChanged一起使用。 – Tom 2013-03-26 20:13:07

+0

感謝代碼,但這只是爲了像我這樣的新手複雜。 – 2013-03-26 20:25:27

0

我不確定點擊事件是否適用於列表框項目,可能只是父框。我會循環查看項目並註冊事件。或者在數據綁定上做。

2

您編碼的事件處理程序,但沒有將其添加到click事件......是這樣的:

listBox1.Click += new EventHandler(listBox1_Click); 
+1

當您的表單構建完成時,需要調用此代碼。 – CodeHxr 2013-03-26 20:00:34

+0

我會把這個嗎? – 2013-03-26 20:08:37

+0

通常在OnInit – 2013-03-26 20:11:37

1

您是否檢查過屬性「AutoPostBack」已啓用(=「True」)? :-)這經常發生在我身上!

0

在Microsoft Visual Studio 2017年 讓您的主要形式(與列表框)到窗體設計視圖 選擇您已經拖到主窗體 列表框項目現在您的屬性列表框中框來一直活在開發窗口的右側 現在看看菜單項的屬性框的頂部,上面有'jag of lightning' 點擊那個...瞧你的雙擊事件是有的

private void lbx _DoubleClick(object sender, EventArgs e) 
{ 
    /* Do good stuff here */ 
} 

Cheers me dears Jim

相關問題