第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

在 WPF 中打開新窗口后主窗口不斷激活

在 WPF 中打開新窗口后主窗口不斷激活

C#
蝴蝶刀刀 2023-09-24 11:22:14
我有一個簡單的 Navigator 類,它保留窗口的實例并打開/關(guān)閉它們。當(dāng)我從主窗口打開一個新窗口時,我需要新窗口位于頂部。問題是 .Focus() 和 .Activate() 都不起作用。新窗口只是閃爍,然后主窗口再次激活,即使我從未明確激活它。我用來打開新窗口的方法如下:public Task OpenDetailAsync(int? deploymentScriptID = null){    if (_detailWindow == null)    {        var source = new TaskCompletionSource<bool>();        _detailWindow = new DetailWindow { DataContext = _detailViewModelFactory.Create(deploymentScriptID, this) };        _detailWindow.Closed += (sender, e) => source.TrySetResult(true);        _detailWindow.WindowStartupLocation = WindowStartupLocation.CenterScreen;        _detailWindow.Show();        _detailWindow.Activate();        _detailWindow.Focus();        return source.Task;    }    else    {        ShowMessageBox("foreign language you wouldn't understand", "lol");        return null;    }}因此,當(dāng)我將 Navigator 類的實例注入主窗口的 DataContext,然后使用它打開詳細信息窗口時,詳細信息窗口被激活,閃爍,然后主窗口再次被激活,當(dāng)我使用主窗口中的以下委托:public ListWindow(){    InitializeComponent();    Activated += ListWindow_Activated;}private void ListWindow_Activated(object sender, EventArgs e){    Console.WriteLine(DateTime.Now);}有什么想法如何解決這個問題嗎?
查看完整描述

1 回答

?
MM們

TA貢獻1886條經(jīng)驗 獲得超2個贊

所以我發(fā)現(xiàn)問題完全出在其他地方。通過雙擊 ListViewItem 從 ListView 打開詳細信息窗口。我在主窗口的 UserControl XAML 文件中處理該事件,如下所示:


<i:Interaction.Triggers>

    <i:EventTrigger EventName="PreviewMouseDoubleClick">

        <i:InvokeCommandAction Command="{Binding OpenDetail}" CommandParameter="{Binding ElementName=ListViewScripts,Path=SelectedItem.DeploymentScriptID}" />

    </i:EventTrigger>

</i:Interaction.Triggers>

事實證明,我所需要做的就是用 MouseDoubleClick 替換 PreviewMouseDoubleClick。


查看完整回答
反對 回復(fù) 2023-09-24
  • 1 回答
  • 0 關(guān)注
  • 272 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號