您好,登錄后才能下訂單哦!
當用戶選擇不同的項時,ListBox 控件會觸發 SelectedIndexChanged 事件。可以在這個事件處理程序中獲取用戶選擇的項,并進行相應的操作。
private void listBox1_SelectedIndexChanged(object sender, EventArgs e)
{
if (listBox1.SelectedIndex != -1)
{
MessageBox.Show("You selected: " + listBox1.SelectedItem.ToString());
}
}
如果希望用戶雙擊某一項時觸發事件,可以使用 MouseDoubleClick 事件。
private void listBox1_MouseDoubleClick(object sender, MouseEventArgs e)
{
int index = listBox1.IndexFromPoint(e.Location);
if (index != ListBox.NoMatches)
{
MessageBox.Show("You double-clicked: " + listBox1.Items[index].ToString());
}
}
如果想讓用戶可以拖拽 ListBox 中的項,可以使用 DragDrop 事件和 DragEnter 事件。
private void listBox1_MouseDown(object sender, MouseEventArgs e)
{
if (listBox1.SelectedItem != null)
{
listBox1.DoDragDrop(listBox1.SelectedItem, DragDropEffects.Move);
}
}
private void listBox1_DragEnter(object sender, DragEventArgs e)
{
if (e.Data.GetDataPresent(DataFormats.Text) && e.AllowedEffect == DragDropEffects.Move)
{
e.Effect = DragDropEffects.Move;
}
else
{
e.Effect = DragDropEffects.None;
}
}
private void listBox1_DragDrop(object sender, DragEventArgs e)
{
int index = listBox1.IndexFromPoint(listBox1.PointToClient(new Point(e.X, e.Y)));
if (index != ListBox.NoMatches)
{
object data = e.Data.GetData(DataFormats.Text);
listBox1.Items.Remove(data);
listBox1.Items.Insert(index, data);
}
}
這些是處理 ListBox 控件事件的一些常見技巧,可以根據實際需求進行相應的調整和擴展。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。