首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Telerik RadWindow

Telerik RadWindow
EN

Stack Overflow用户
提问于 2015-05-15 11:15:16
回答 1查看 1.5K关注 0票数 2

我在WPF中遇到了Telerik主题的一些问题,我添加了对Telerik.Windows.Themes.Windows8的引用,并使用文件App.xaml将资源与以下代码合并:

代码语言:javascript
复制
<Application.Resources>
    <ResourceDictionary>
        <ResourceDictionary.MergedDictionaries>
            <ResourceDictionary Source="/Telerik.Windows.Themes.Windows8;component/Themes/System.Windows.xaml"/>
            <ResourceDictionary Source="/Telerik.Windows.Themes.Windows8;component/Themes/Telerik.Windows.Controls.xaml"/>
            <ResourceDictionary Source="/Telerik.Windows.Themes.Windows8;component/Themes/Telerik.Windows.Controls.Navigation.xaml"/>
            <ResourceDictionary Source="/Telerik.Windows.Themes.Windows8;component/Themes/telerik.windows.controls.docking.xaml"/>
        </ResourceDictionary.MergedDictionaries>
    </ResourceDictionary>
</Application.Resources>

现在我想将windows 8样式应用于我的主窗口,所以我将其更改为telerik:RadWindow

代码语言:javascript
复制
<telerik:RadWindow
        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"
        x:Class="Foo.MainWindow"
        Header="MainWindow" Height="350" Width="525">
    <Grid>
        <TextBlock HorizontalAlignment="Left" Margin="37,79,0,0" TextWrapping="Wrap" Text="TextBlock" VerticalAlignment="Top"/>
        <telerik:RadSlider HorizontalAlignment="Left" Margin="273,156,0,0" VerticalAlignment="Top" Width="200"/>
        <telerik:RadButton Content="Button" HorizontalAlignment="Left" Height="Auto" Margin="158,232,0,0" VerticalAlignment="Top" Width="Auto" Click="ButtonBase_OnClick"/>
    </Grid>
</telerik:RadWindow>

在设计器中,主题被应用,任何东西看起来都没问题:

但是,当我启动应用程序时,它看起来完全不同:

我不知道为什么会发生这个错误。如果我使用代码来创建一个RadWindow,它将完美地工作:

代码语言:javascript
复制
RadWindow w = new RadWindow();
w.Width = 500;
w.Height = 500;
w.Show();
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-05-15 11:21:16

我认为,当您使用隐式样式时,您需要声明您的窗口样式是基于您导入的隐式样式。将此添加到您的RadWindow XAML中:

代码语言:javascript
复制
<telerik:RadWindow.Style>
    <Style TargetType="telerik:RadWindow" BasedOn="{StaticResource RadWindowStyle}" />
</telerik:RadWindow.Style>

或者将其添加到资源字典(local:MainWindow应该解析为Foo.MainWindow):

代码语言:javascript
复制
<Style BasedOn="{StaticResource RadWindowStyle}" TargetType="local:MainWindow" />

以下是一些可能被证明有用的链接:

http://www.telerik.com/forums/show-radwindow-with-implict-style http://www.telerik.com/support/kb/wpf/window/details/how-to-use-radwindow-as-main-window

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30258123

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档