我正在使用XtraReports的试用版。我的应用程序基于框架和materialdesing对话框。我使用自定义强调颜色创建了几个页面。一切正常。当我打开包含DocumentPreviewControl的对话框或页面并切换回其他页面时,我的页面背景变为白色。当我从页面中删除DocumentPreviewControl时,一切正常。
有什么建议吗?
代码: ReportPage.xaml:
<StackPanel>
<DockPanel Height="750" Background="#454545">
<dxp:DocumentPreviewControl RequestDocumentCreation="True" DocumentSource="{Binding ReportDocument}" dx:ThemeManager.ThemeName="Office2013DarkGray"/>
</DockPanel>
</StackPanel>
MainWindow.xaml:
<Frame Grid.Row="0" Grid.Column="1" Grid.ColumnSpan="2"
Name="frame"
Background="#FF454545"
Margin="0,20,0,10"
NavigationUIVisibility="Hidden">
<Frame.Style>
<Style TargetType="Frame">
<Style.Triggers>
<DataTrigger Binding="{Binding IsLogged}" Value="True">
<Setter Property="Source" Value="MainPage.xaml"/>
</DataTrigger>
<DataTrigger Binding="{Binding IsLogged}" Value="False">
<Setter Property="Source" Value="NotLoggedPage.xaml"/>
</DataTrigger>
</Style.Triggers>
</Style>
</Frame.Style>
答案 0 :(得分:1)
之所以会发生这种现象,是因为DevExpress主题也会影响标准控件的样式。当控件注入到可视树中时,默认的Office2016White主题将应用于所有元素。如果要禁用此行为,请在应用程序启动时将ApplicationThemeHelper.UseLegacyDefaultTheme属性设置为true:
Sub Test()
MsgBox Eval("1+2+3^4")
End Sub
Function Eval(s As String)
Static oDoc As Object
If oDoc Is Nothing Then
Set oDoc = CreateObject("htmlfile")
oDoc.parentWindow.execScript "Function EvalExpr(s): EvalExpr = Eval(s): End Function", "vbscript"
End If
Eval = oDoc.parentWindow.EvalExpr(s)
End Function