簡體   English   中英

嘗試將VB.Net轉換為C#

[英]Trying to Convert VB.Net to C#

我在網上找到的vb.net代碼轉換為C#時遇到問題。

vb.net

 Protected Overridable Sub OnRowClicked(ByVal e As GridViewRowClickedEventArgs)
    'raise the RowClicked event
    RaiseEvent RowClicked(Me, e)
End Sub

'setup our EventHandler for RowClicked
Public Custom Event RowClicked As EventHandler(Of GridViewRowClickedEventArgs)
    AddHandler(ByVal value As EventHandler(Of GridViewRowClickedEventArgs))
        Events.AddHandler(RowClickedEventKey, value)
    End AddHandler

    RemoveHandler(ByVal value As EventHandler(Of GridViewRowClickedEventArgs))
        Events.RemoveHandler(RowClickedEventKey, value)
    End RemoveHandler

    RaiseEvent(ByVal sender As Object, ByVal e As GridViewRowClickedEventArgs)
        Dim ev As EventHandler(Of GridViewRowClickedEventArgs) = TryCast(Events(RowClickedEventKey), EventHandler(Of GridViewRowClickedEventArgs))
        If Not IsNothing(ev) Then
            ev(sender, e)
        End If
    End RaiseEvent
End Event

C#

protected virtual void OnRowClicked(GridViewRowClickedEventArgs e)
    {
        //raise the RowClicked event
        if (RowClicked != null)
        {
            RowClicked(this, e);
        }
    }

    //setup our EventHandler for RowClicked
    public event EventHandler<GridViewRowClickedEventArgs> RowClicked
    {
        add { Events.AddHandler(RowClickedEventKey, value); }

        remove { Events.RemoveHandler(RowClickedEventKey, value); }

    }

我在網上使用了代碼轉換器。 問題在線

//raise the RowClicked event
    if (RowClicked != null)
    {
        RowClicked(this, e);
    }

我收到的錯誤是:事件“ RowClickGridView.RowClicked”只能出現在+ =或-=的左側

有任何想法嗎?

只需刪除添加/刪除-部分:

public event EventHandler<GridViewRowClickedEventArgs> RowClicked;

我在這里看不到什么特別的東西。 我只是使用標准的事件構造而忘記了這些自定義內容。

protected virtual void OnRowClicked(GridViewRowClickedEventArgs e)
{
   EventHandler<GridViewRowClickedEventArgs> temp = RowClicked ;
    //raise the RowClicked event
    if (temp != null)
    {
        temp(this, e);
    }
}


public event EventHandler<GridViewRowClickedEventArgs> RowClicked;

cf http://msdn.microsoft.com/en-us/library/db0etb8x.aspx

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM