C# 事件的嵌套触发

C# 事件的嵌套触发,c#,events,C#,Events,我的表单中有一个富文本框、列表框和复选框以及一个按钮。 富文本框已加载文本文件。我正在富文本框中搜索选中列表框的字符串,并将找到的字符串的索引添加到列表框中。 在鼠标双击错误列表的事件时,我将光标设置到字符串的特定索引位置 现在我计划在下一个和上一个表单中再添加两个按钮。它将选择列表框的下一个和上一个项目,光标应指向该位置。如何做到这一点。 也就是说,单击旁边的按钮时,所选项目应该是当前项目的旁边,为此,我应该调用鼠标双击事件 private void lstErrorList_MouseDo

我的表单中有一个富文本框、列表框和复选框以及一个按钮。 富文本框已加载文本文件。我正在富文本框中搜索选中列表框的字符串,并将找到的字符串的索引添加到列表框中。 在鼠标双击错误列表的事件时,我将光标设置到字符串的特定索引位置

现在我计划在下一个和上一个表单中再添加两个按钮。它将选择列表框的下一个和上一个项目,光标应指向该位置。如何做到这一点。 也就是说,单击旁边的按钮时,所选项目应该是当前项目的旁边,为此,我应该调用鼠标双击事件

 private void lstErrorList_MouseDoubleClick(object sender, MouseEventArgs e)
        {
            //rtbFileDisplay.Cursor = Cursors.WaitCursor;
            MessageBox.Show(lstErrorList.SelectedIndex.ToString());

            int val;
            string val1 = lstErrorList.Text;
            val1 = val1.Remove(0, val1.Length - 8);
            string replacement = Regex.Replace(val1, @"\t|\n|\r|[a-zA-Z]","");
            val = Convert.ToInt32(replacement);
            rtbFileDisplay.Select(val, 0);

            rtbFileDisplay.Focus();

        }
 private void btnNextError_Click(object sender, EventArgs e)
        {
            if (lstErrorList.Items.Count != 0)
            {
                if (lstErrorList.SelectedIndex != lstErrorList.TopIndex)
                    lstErrorList.SelectedIndex++;
                //lstErrorList.SelectedItem = int.Parse(lstErrorList.SelectedItem + 1);

            }
    }

不一定被视为良好做法,但如果您只是忽略了发送方和eventargs,您可以调用任何带有“null”的事件。

不一定被视为良好做法,但是,如果只是忽略发送方和eventargs,则可以使用“null”来调用任何事件。

将代码移动到私有方法。因此,您可以在代码中调用这些方法,而不必伪造鼠标事件。我可以调用选定的索引更改事件。但是,我坚持调用鼠标双击lstErrorList lstErrorList.mousedoubleclickssender…这里应该替换什么将代码移到私有方法。因此,您可以在代码中调用这些方法,而不必伪造鼠标事件。我可以调用所选的索引更改事件。但仍然坚持调用鼠标双击lstErrorList lstErrorList.mousedoubleclickssender…这里应该替换什么