Pergunta : Erro com RemoveHandler e AddHandler

Olá!,

In o seguinte código que eu estou tentando remover um alimentador antes que o procedimento funcionar e o adiciono para trás quando o procedimento concluir.  Entretanto eu mantenho-me começ uma mensagem de erro que indic que o
lvSubprograms_ItemChecked não tem a assinatura correta na remoção nem não adiciona o alimentador code
class= > " desobstruído " do
> do " codeSnippet " do class= do
class= " lineNumbers " do
class= do
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
51:
52:
53:
54:
55:
56:
57:
58:
59:
60:
61:
62:
63:
64:
secundário notpretty do >Private " do class= " de " codeSnippet847099 do id= do
 -1 então
                strSP não ofuscante como a corda = o cboTechnologySet.SelectedItem.ToString
                TechnologyList = TechnologySetDB.GetProgramSubprogramList (strSP)
                lvSubprograms.Items.Clear ()
                Para j como o inteiro = 0 a TechnologyList.Count - 1
                    T não ofuscante como TechnologySet novo
                    t = TechnologyList (j)
                    lvSubprograms.Items.Add (t.TechnologySetCode)
                    lvSubprograms.Items (lvSubprograms.Items.Count - 1) .SubItems.Add (t.SubTechnologyCode)
                    lvSubprograms.Items (lvSubprograms.Items.Count - 1). Verific = falso
                Em seguida
            Mais
                MessageBox.Show (“uma seleção deve ser feita”)
            Terminar se
        Travar ex como a exceção
            MessageBox.Show (ex. Mensagem, ex.GetType.ToString)
        Finalmente
            AddHandler lvSubprograms.ItemCheck, AddressOf lvSubprograms_ItemChecked
        Tentativa do fim

    Submarino da extremidade


    Secundário confidencial lvSubprograms_ItemChecked (remetente de ByVal como System.Object, ByVal e como System.Windows.Forms.ItemCheckedEventArgs) segura lvSubprograms.ItemChecked

        Mymetriclist não ofuscante como a lista nova (de medidor)
        Tentativa
            lvMetrics.Items.Clear ()
            Para cada checkedItem como ListViewItem em lvSubprograms.CheckedItems
                M não ofuscante como o medidor novo
                Se cboInputCode.Text = “NEMS” então
                    m.Technology = “nanômetro”
                Mais
                    m.Technology = checkedItem.SubItems (1). Text.ToString
                Terminar se
                mymetriclist. Adicionar (m)
            Em seguida

            myDataTable não ofuscante como DataTable novo

            myDataTable = MetricsDB.GetMetricList (mymetriclist)
            'PopulateMetricsListView (myDataTable)

            Ds não ofuscante como a série de dados nova
            dsHelper não ofuscante = DataSetHelper novo (ds)
            ds. Tables.Add (myDataTable)
            Dtnew não ofuscante como DataTable novo

            dtnew = dsHelper.SelectDistinct (“DistinctMetrics”, ds. Tabelas (0), “MetricName”)


            'PopulateMetricsListView (dtnew)


        Prendedor ex como a exceção
            MessageBox.Show (ex. Mensagem, ex.GetType.ToString)
        Tentativa do fim


    Submarino da extremidade
class= do

Resposta : Erro com RemoveHandler e AddHandler

Olá! chtullu135;

No AddHandler/RemoveHandler o evento precisa de combinar a assinatura do evento que você está chamando. Em seu código original você teve o o evento lvSubprograms.ItemCheck que tem um alimentador de evento com a assinatura:

Secundário confidencial lvSubprograms_ItemChecked (remetente de ByVal como System.Object, ByVal e como System.Windows.Forms.ItemCheckedEventArgs) segura lvSubprograms.ItemChecked

Anotar o argumento ItemCheckedEventArgs do evento que difere das necessidades de ItemCheck do evento. O evento ItemCheck precisa de prover e arg do evento de ItemCheckEventArgs segundo as indicações da indicação seguinte.

O lvSubprograms_ItemCheck secundário confidencial (remetente de ByVal como o objeto, ByVal e como System.Windows.Forms.ItemCheckEventArgs) segura lvSubprograms.ItemCheck

Fernando
Outras soluções  
 
programming4us programming4us