小编Lum*_*umo的帖子

在 Windows 切换用户或远程桌面登录时调用的 WPF View 构造函数

我有一个 WPF 窗口,其中包含ContentControl使用DataTemplate在 Windows 资源中定义的a :

<Window (...)>
    <Control.Resources>
        <DataTemplate DataType="{x:Type local:MainVM}">
            <local:MainView />
        </DataTemplate>
    </Control.Resources>

    <ContentControl Content="{Binding}" />

    <!--<local:MainView /> This Works as expected -->
</Window>
Run Code Online (Sandbox Code Playgroud)

为了测试,这MainView是一个没有内容的普通 wpf 用户控件。

在我的 MainWindow 构造函数中,我设置了 datacontext 一次:

public MainWindow()
{
     InitializeComponent();
     DataContext = new MainVM();
}
Run Code Online (Sandbox Code Playgroud)

通常,MainView如果我从不更改DataContext窗口的,我希望构造函数只被调用一次。

但是,每次我使用远程桌面登录我的机器时,或者当我按下“切换用户”并重新登录时,都会调用它:

public MainView()
{
    InitializeComponent(); // <--- this is called upon loggin on
}
Run Code Online (Sandbox Code Playgroud)
  • 既不调用窗口DataContextChanged事件也不MainView.Unloaded调用事件。

  • 这仅发生在我的 Windows 10 Pro 64 位 …

.net wpf user-interface

5
推荐指数
0
解决办法
403
查看次数

使用剪切或复制从剪贴板粘贴文件

.NET Clipboard 类具有将文件放入剪贴板并定义是否应移动或复制(剪切/复制)的方法。

但是,如果我想粘贴复制到剪贴板中的文件,我看不到文件是使用标准剪贴板方法剪切还是复制的

.net c# clipboard cut copy-paste

4
推荐指数
1
解决办法
499
查看次数

标签 统计

.net ×2

c# ×1

clipboard ×1

copy-paste ×1

cut ×1

user-interface ×1

wpf ×1