2013-04-18 4 views
0

У меня есть приложение C# WPF, которое используется для программного обеспечения с использованием Open Broadcaster Software. Когда приложение находится на переднем плане или даже скрыто другим приложением, оно работает нормально. Однако, если он фактически минимизирован, он обновляет stps. Это имеет смысл, потому что обычно вам нужно перерисовать его, если никто не сможет его увидеть, но это неверно для этого случая. Возможно ли каким-то образом заставить пользовательский интерфейс перерисовать? Можно было бы назвать определенный метод каждый раз, когда требуется обновление пользовательского интерфейса, так как код, где я должен был бы интерфейс для обновления/перерисовки выглядит примерно так (упрощенный):Redraw WPF UI при минимизации

private void displaySomething(int something) 
{ 
    someRectangle.Fill = new SolidColorBrush(...); 
    // Redraw UI here 
} 

EDIT: «Обновить» возможно, был вводящим в заблуждение термином здесь. «Перерисовать» может быть лучше.

+0

Для этого потребуется фоновый поток, который запускается, когда приложение минимизируется. –

+0

Почему вы не пытались сделать это через привязку данных? Также вы можете рассказать мне о том, что вы пытаетесь обновить? Контроль и это свойство? – RockWorld

+0

«Это имеет смысл, потому что обычно вам нужно обновлять его, если никто не может его увидеть, но это неверно для этого случая». Хорошо, не могли бы вы объяснить, почему вы пытаетесь обновить пользовательский интерфейс при его минимизации? Тогда мы сможем найти лучшие решения. – Dilshod

ответ

0

Так что если он работает, даже форма находится за другой формой, то не позволяйте пользователю Minimize форму. Set yourWindow.ResizeMode = ResizeMode.NoResize;

Смежные вопросы