wpf - Reading file async still blocks the UI -


i have simple treeview, when click on treeview item load text file

here code:

private async void notestreeview_onselecteditemchanged(object sender, routedpropertychangedeventargs<object> e) {     var clickedmodel = e.newvalue treefileitem;     if (clickedmodel != null && file.exists(clickedmodel.filepath))     {         _viewmodel.noteloadinginprogress = true;         using (var reader = file.opentext(clickedmodel.filepath))         {             var filecontent = await reader.readtoendasync();             _viewmodel.activenote = filecontent;         }         _viewmodel.noteloadinginprogress = false;     } } 

this works, when click on treeview item ui frozen, until file read complete. why such behavior? have other async methods in code , don't block ui.

edit: seems issue not in reading file, in setting large amount of text textbox.text properti via databinding, though setting directly take lot of time , make ui freeze

the ui frozen, until file read complete

streams opened file.opentext never asynchronous. describe on blog, must open file using method isasync parameter (set true) or fileoptions parameter (including fileoptions.asynchronous value).

it seems issue not in reading file, in setting large amount of text textbox.text properti via databinding

yes, ui elements not intended used huge amounts of data. need use virtualization if have large amounts of data display.


Comments

Popular posts from this blog

java - SSE Emitter : Manage timeouts and complete() -

jquery - uncaught exception: DataTables Editor - remote hosting of code not allowed -

java - How to resolve error - package com.squareup.okhttp3 doesn't exist? -