Lami Skrevet 24. januar 2012 Del Skrevet 24. januar 2012 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
BlueEAGLE Skrevet 24. januar 2012 Del Skrevet 24. januar 2012 MultipointSdk.Instance.DeviceArrivalEvent = MultipointSdk.Instance.DeviceArrivalEvent + MultipointDeviceArrivalEvent Operatøren += tilordner summen av begge operatørene til den venstre variabelen int a = 3; int b = 2; a += b; //variabel a er nå lik 5 (a+b) Lenke til kommentar
Lami Skrevet 24. januar 2012 Forfatter Del Skrevet 24. januar 2012 (endret) 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 24. januar 2012 av Lami Lenke til kommentar
GeirGrusom Skrevet 25. januar 2012 Del Skrevet 25. januar 2012 (endret) Du kan bruke AddHandler operatøren. edit: Eventuelt er det en annen løsning også. Deklarer objektet som WithEvents, og du kan bruke Handles istedet: WithEvents MyObject As New MyType() Private Sub SomeFunction(ByVal sender As Obbject, ByVal e As EventArgs) Handles MyObject.SomeEvent End Sub Endret 25. januar 2012 av GeirGrusom Lenke til kommentar
Lami Skrevet 25. januar 2012 Forfatter Del Skrevet 25. januar 2012 (endret) 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 25. januar 2012 av Lami Lenke til kommentar
GeirGrusom Skrevet 25. januar 2012 Del Skrevet 25. januar 2012 (endret) 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 25. januar 2012 av GeirGrusom Lenke til kommentar
Lami Skrevet 25. januar 2012 Forfatter Del Skrevet 25. januar 2012 (endret) 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 25. januar 2012 av Lami Lenke til kommentar
GeirGrusom Skrevet 25. januar 2012 Del Skrevet 25. januar 2012 MultipointSdkDeviceArrivalEvent er en dll funksjon? Lenke til kommentar
Lami Skrevet 25. januar 2012 Forfatter Del Skrevet 25. januar 2012 (endret) 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 25. januar 2012 av Lami Lenke til kommentar
GeirGrusom Skrevet 25. januar 2012 Del Skrevet 25. januar 2012 (endret) AddHandler MittEvent, AddressOf MinFunksjon er det samme som MittEvent += MinFunksjon Så hvis du forstår hva den ene gjør, så burde du nå også forstå den andre. Endret 25. januar 2012 av GeirGrusom Lenke til kommentar
Lami Skrevet 25. januar 2012 Forfatter Del Skrevet 25. januar 2012 Det jeg trodde, men når jeg får error så begynner jeg å lure litt, men tusen takk for svar. Fikk forresten opp denne feilmeldingen: 'mpButton' is not declared. It may be inaccessible due to its protection level. Lenke til kommentar
GeirGrusom Skrevet 26. januar 2012 Del Skrevet 26. januar 2012 Det står i feilmeldingen hva som er galt. mpButton er et objekt som ikke er tilgjengelig. Enten fordi den ikke finnes, eller fordi den er private/protected/internal/protected internal. Lenke til kommentar
Lami Skrevet 26. januar 2012 Forfatter Del Skrevet 26. januar 2012 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. Fulger denne guiden. Tusen takk. Lenke til kommentar
GeirGrusom Skrevet 26. januar 2012 Del Skrevet 26. januar 2012 (endret) 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 26. januar 2012 av GeirGrusom Lenke til kommentar
Anbefalte innlegg
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 kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå