我已经为拖放功能编写了列表框。选择项目字符串的初始部分时,它正常工作。
例如,我three entries in list box
喜欢
hakuna matata 丛林男孩 mogli - 9202
砰砰砰砰砰砰加利福尼亚 - 9800
up up and away 超人 superman - 9808
当我鼠标向下直到丛林时,我得到index as 0
或 当我click till boombastic
得到 1returns -1
但当我在这些字母之后鼠标按下任何东西时,我得到了属性。
项目选择是否有任何定义的长度?
这是我的代码:
lstBxJustAnother.Items.AddRange(new object[]
{"hakuna matata baloooo har har bole-9202",
"bam bam boom california usa-9808",
"up up and away superman 1940-9800"
});
void lstBxJustAnother_MouseDown(object sender, MouseEventArgs e)
{
int itemIndex = lstBxJustAnother.IndexFromPoint(e.Location);
lblSecondSplit.Text = "Item" + itemIndex + " is selected";
if (itemIndex >= 0 && itemIndex < lstBxJustAnother.Items.Count)
{
lstBxJustAnother.DoDragDrop(lstBxJustAnother.Items[itemIndex],
DragDropEffects.Move);
}
//MessageBox.Show(itemIndex.ToString());
}
我也尝试过使用 eX,eY 坐标。