我在一个 `WPF\Telerik 项目中工作。我遇到了一个非常奇怪的问题,由于功能的相互依赖性,我无法使用解决方法。
我的项目具有自动注销功能,为此我必须使用如下所示的这段代码。
private void InitializeAutoLogoffFeature()
{
HwndSource windowSpecificOSMessageListener = HwndSource.FromHwnd(new WindowInteropHelper(this).Handle);
windowSpecificOSMessageListener.AddHook(new HwndSourceHook(CallBackMethod));
LogOffHelper.LogOffTime = logOffTime;
LogOffHelper.MakeAutoLogOffEvent += new MakeAutoLogOff(AutoLogOffHelper_MakeAutoLogOffEvent);
LogOffHelper.StartAutoLogoffOption();
}
在这HwndSource windowSpecificOSMessageListener = HwndSource.FromHwnd(new WindowInteropHelper(this).Handle);
行代码中,我必须通过 window( this
)。
因此必须使用因为构造函数只接受类型[Window_Name]
来实现窗口。Window
WindowInteropHelper
Window
但是当我暗示如下
public partial class MainWindow : Window
{
我得到一个错误,
Partial declarations of '[WPFApplication].MainWindow' must not specify different base classes
这MainWindow
不是一个Window
它的一个Telerik window
。
XML 如下所示。
<telerik:RadWindow x:Class="[WPFApplication].MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:telerik="http://schemas.telerik.com/2008/xaml/presentation"
Header="POS" Height="820" Width="1280"
WindowStartupLocation="CenterScreen">
<telerik:RadWindow.Resources>
..
这是我的 App.xaml
<Application x:Class="[WPFApplication].App"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
StartupUri="MainWindow"
>
<Application.Resources>
</Application.Resources>
我也尝试过使用此代码App.xaml.cs
public partial class App : Application
{
protected override void OnStartup(StartupEventArgs e)
{
new MainWindow().Show();
base.OnStartup(e);
}
}
我应该如何克服这个错误?