Gå til innhold

Trenger hjelp til kode: C# -> VB.NET


Anbefalte innlegg

Heisann.

 

Trenger hjelp til en enkel og forhåpentlig rask oversettelse fra C# til VB.NET.

 

Her er koden:

 

MultipointSdk.Instance.DeviceArrivalEvent += MultipointDeviceArrivalEvent;

Denne skal da declares i Window_Loaded event handler.

 

Takker for alle svar.

Lenke til kommentar
Videoannonse
Annonse

Den går ikke :/ Får opp at det er en event "and cant be called directly. Use 'RaiseEvent' statement to raise an event."

 

EDIT: Koden.

 

 Private Sub Window_Loaded(ByVal sender As System.Object, ByVal e As System.Windows.RoutedEventArgs) Handles MyBase.Loaded

       MultipointSdk.Instance.DeviceArrivalEvent = MultipointSdk.Instance.DeviceArrivalEvent + MultipointDeviceArrivalEvent

   End Sub

Endret av Lami
Lenke til kommentar

Tenker å bruke AddHandler altså. Brukt det på resten av koden, så..

Men problemet er at jeg ikke helt skjønner hva som skal stå i "Addhandler ...":

 

AddHandler MyBase.Loaded AddressOf MultipointSdkDeviceArrivalEvent

 

Går jo ikke.

 

Det jeg vet er at jeg skal:

Declare a handler for the device arrival event. This should be declared when the application is initialized, either in the constructor or in the Window.Loaded event handler for the main application window.

Endret av Lami
Lenke til kommentar

Gjør det i constructor med mindre du har en grunn til å gjøre det i Load.

I koden du har skrevet er det vel så simpelt som at du mangler et kommma, og at du bruker heeeeeeeeelt feil event.

AddHandler MultipointSdk.Instance.DeviceArrivalEvent, AddressOf MultipointSdkDeviceArrivalEvent

 

Du må også ha definfert funksjonen MultipointSdkDeviceArrivalEvent til å være lik DeviceArrivalEvent.

 

Litt mer kontekst (dersom MultipointSdk er en singleton, som det ser ut som):

 

Public Sub New()
 InitializeComponent() ' Dersom dette er en form '
AddHandler MultipointSdk.Instance.DeviceArrivalEvent, AddressOf MultipointSdkDeviceArrivalEvent
End Sub

Endret av GeirGrusom
Lenke til kommentar

Litt morsomt, for det var akkurat det jeg skrev først, men fikk opp error da også, og den lyder slik:

 

Method 'Declare Ansi Sub MultipointSdkDeviceArrivalEvent Lib "InstanceDeviceArrivalEvent"(MultipointDeviceArrivalEvent As Object)' does not have a signature compatible with delegate 'Delegate Sub EventHandler(Of Microsoft.Multipoint.Sdk.DeviceNotifyEventArgs)(sender As Object, e As Microsoft.Multipoint.Sdk.DeviceNotifyEventArgs)'.

Endret av Lami
Lenke til kommentar

Det kan hende, men isåfall så har jeg importert alt av nødvendige dll filer. Men tror ikke jeg gidder å bry meg mer om den koden der. Er ikke så nødvendig, så dropper akkurat den koden, og fokuserer heller på noe som jeg virkelig trenger:

 

// Declare MultiPoint mouse button handler

mpButton.MultipointClick += mpButton_Click;

 

Er det dim .. as .. jeg skal bruke her?

Skjønner ikke snurten av den C# koden der..

Endret av Lami
Lenke til kommentar

Knappen finnes den.. Er jeg nødt til å legge til dette:

Dim mpButton As New MultipointButton

 

Hvis jeg gjør det, så får jeg opp på den andre:

'MultipointClick' is not an event of 'Scoreboard.MainWindow.MultipointButton'.

 

Så det betyr jo bare at koden min:

AddHandler mpButton.MultipointClick, AddressOf mpButton_Click

 

ikke er en event. :hmm:

 

Fulger denne guiden.

Tusen takk.

Lenke til kommentar

Det betyr at MultipointClick ikke finnes (kanskje den bare heter Click?). Dette skal da Visual Studio vise deg når du skriver.

 

edit: du er forøvrig fullstendig klar over at det er full multipoint touch støtte i Windows Presentation Foundation?

edit2: ser at denne har en litt annen hensikt...

edit3: etter å lete i dokumentasjonen ser jeg at det er en event som heter MultipointClick.

Hvis knappen din finnes, skal koden over fungere, forutsatt at knappen er av type Microsoft.Multipoint.Sdk.Controls.MultipointButton.

 

Uansett: er ikke dette bedre å gjøre i XAML?

Endret av GeirGrusom
Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...