- Lesz Xperia 10 VII, méghozzá újratervezett külsővel
- Poco X6 Pro - ötös alá
- Samsung Galaxy Z Fold7 - ezt vártuk, de…
- Garmin Fenix 7 és 7S - profi sport megszokásból
- Google Pixel topik
- Megjött a jubileumi Pixel széria
- Ezek az új Google Pixel cuccok hivatalos magyar árai
- Telekom mobilszolgáltatások
- Motorola Edge 40 - jó bőr
- Samsung Galaxy Z Fold5 - toldozás-foldozás
Új hozzászólás Aktív témák
-
x007
tag
Jaaaa, WPF-ben nincsen gyári DoEvents, viszont van workaround:
private void button1_Click(object sender, RoutedEventArgs e)
{
button1.IsEnabled = false;
WpfApplication.DoEvents();
Thread.Sleep(3000);
button1.IsEnabled = true;
}
/// <summary>
/// Designates a Windows Presentation Foundation application model with added functionalities.
/// </summary>
public class WpfApplication : Application
{
private static DispatcherOperationCallback exitFrameCallback = new
DispatcherOperationCallback(ExitFrame);
/// <summary>
/// Processes all UI messages currently in the message queue.
/// </summary>
public static void DoEvents()
{
// Create new nested message pump.
DispatcherFrame nestedFrame = new DispatcherFrame();
// Dispatch a callback to the current message queue, when getting called,
// this callback will end the nested message loop.
// note that the priority of this callback should be lower than the that of UI event messages.
DispatcherOperation exitOperation = Dispatcher.CurrentDispatcher.BeginInvoke(
DispatcherPriority.Background, exitFrameCallback, nestedFrame);
// pump the nested message loop, the nested message loop will
// immediately process the messages left inside the message queue.
Dispatcher.PushFrame(nestedFrame);
// If the "exitFrame" callback doesn't get finished, Abort it.
if (exitOperation.Status != DispatcherOperationStatus.Completed)
{
exitOperation.Abort();
}
}
private static Object ExitFrame(Object state)
{
DispatcherFrame frame = state as DispatcherFrame;
// Exit the nested message loop.
frame.Continue = false;
return null;
}
}Megjegyzem, hogy ez továbbra se fogja teljes mértékig megoldani a problémát, mert az ablak ugyanúgy meg fog fagyni a DB kapcsolat tesztelésekor. (WinForms esetén is így lenne) Szóval mindenképpen javaslom a BackGroundWorker használatát.
Új hozzászólás Aktív témák
● ha kódot szúrsz be, használd a PROGRAMKÓD formázási funkciót!
- HP ZBook 15 G6 i7-9850H 16GB RAM 512GB SSD NVIDIA Quadro T2000 15.6 FHD 1 év garancia
- AKCIÓ! FEHÉR ipad pro 13" M4 billentyűzet, VADIÚJ! EU-MAGYAR átvilágítós (lézeresen)
- Microsoft Surface Pro 6 fekete
- Több mint 70.000 eladott szoftverlicenc
- Samsung Galaxy S23 Ultra 256GB Kártyafüggetlen 1Év Garanciával
Állásajánlatok
Cég: FOTC
Város: Budapest