[c#] Okno niemodalne - problem z ustawieniem zachowania

0

Jest sobie aplikacja, jest główne okno, jest na nim lista - a jak kliknę na element tej listy pojawia się okno
niemodalne

chciałbym aby pojawiało się zawsze na wierzchu
i przeważnie tak się dzieje, ale gdy coś tam grzebnę, kliknę, ogólnie wykonam akcję na formie głównej w czasie od wywołania okna do jego pojawienia to jest taka akcja

okno się pojawia na sekundę, po czym chowa się pod okno główne

  • okno nie może być modalne
  • nie może być ustawiona wartość topmost na true

a chodzi o to, żeby w jakiś sposób zniwelować to kliknięcie na główne okno programu w czasie od wywołania okna do jego pojawienia się

jak to zrobić?

sprawdzałem SPY++ i wygląda to tak

  • komunikaty związane z kliknięciem wywołującym nowe okno
  • komunikaty związane z nowym oknem (showwindow, activate dla okna kontrolek itp)
  • komunikaty związane z kliknięciem na główny formularz
  • komunikaty aktywacji głównego formularza

stąd moje pytanie - jak zrobić w C# takie coś, żeby w czasie od wywołania kliknięciem okna do jego pojawienia się nie zwracać uwagi nie kolejkować komunikatów związanych np z kliknięciem, tak żeby po pokazaniu się nowego okna było ono zawsze na wierzchu obojętnie czy bym klikał na główny formularz programu czy też nie

zupełnie nie wiem jak się do tego zabrać, nie mam na to pomysłu - z góry dziękuję, za podpowiedzi i pomoc

0

jak okno straci focus to zostanie przykryte
nie da sie miec okna na gorze bez focus
chyba byl juz taki watek

aby pominac komunikaty, wystarczy w petli komunikatow ignorowac odpowiednie komunikaty

0
massther napisał(a)

jak okno straci focus to zostanie przykryte
nie da sie miec okna na gorze bez focus
chyba byl juz taki watek

aby pominac komunikaty, wystarczy w petli komunikatow ignorowac odpowiednie komunikaty

dzięi za odpowiedź
ale jak to zrobić - bo tu jest problem, że nie chcę ignorować komunikatów cały czas, ale od do - czyli od kliknięcia wywołującego okno do pojawienia się tego okna - i to jest dla mnie problem, bo motam się z tym i na razie nie wychodzi

0

proponuje aby okno niemodalne rzucilo jakis event jak sie zaladuje, czyli na koniec Load
okno glowne po utworzeniu dziecka, przed jego pokazaniem podpina sie pod ten komunikat
przed utworzeniem ustawia jakas zmienna bool ze zaczyna ingnorowac komunikaty, a w obsludze eventu z okna dziecka ustawia ta flage ze juz przyjmuje komunikaty
w petli komunikatow okna glownego sprawdzasz jaka wartosc ma flaga i albo obslugujesz komunikat, albo nie

1 użytkowników online, w tym zalogowanych: 0, gości: 1