Force UI update on the fly, after changing current culture in WPF

前端 未结 3 1068
忘了有多久
忘了有多久 2021-02-04 07:31

I need to support UI language change through the application menu. The texts are localized using resource files (similar to approach 1 here)

if I set the Thread.Cu

3条回答
  •  感情败类
    2021-02-04 07:55

    A way that I tried and works well is this method, to call after the assignment of the property in the ViewModel:

    private void AllowUiToUpdate()
    {
        var frame = new DispatcherFrame();
    
        var dispatcherOperationCallback = new DispatcherOperationCallback(delegate
            {
                frame.Continue = false;
                return null;
            });
    
        Dispatcher.CurrentDispatcher.BeginInvoke(DispatcherPriority.Render, dispatcherOperationCallback, null);
    
        Dispatcher.PushFrame(frame);
    }
    

提交回复
热议问题