public async Task RegisterTransitionEndedAsync(ElementReference elementRef, Func <TransitionEventArgs, Task> onEndedCallback, string transitionPropertyName = "") { await CheckJsObjectAsync(); var info = new TransitionEventInfo(elementRef, onEndedCallback, transitionPropertyName); var dotnetRef = DotNetObjectReference.Create <TransitionEventInfo>(info); _dotNetObjectReferences.Add(dotnetRef); await _transitionJs.InvokeVoidAsync("addTransitionEnd", elementRef, dotnetRef, transitionPropertyName); }
public async Task RegisterTransitionsWhenAllEndedAsync(Func <TransitionEventArgs[], Task> onEndedCallback, params KeyValuePair <ElementReference, string>[] elementRefsWithProperties) { await CheckJsObjectAsync(); var collection = new TransitionCollectionInfo(onEndedCallback); foreach (var item in elementRefsWithProperties) { var info = new TransitionEventInfo(item.Key, collection.WhenAllFinished, item.Value); collection.Add(info); var dotnetRef = DotNetObjectReference.Create <TransitionEventInfo>(info); _dotNetObjectReferences.Add(dotnetRef); await _transitionJs.InvokeVoidAsync("addTransitionEnd", item.Key, dotnetRef, item.Value); } }