我正在尝试修改我的管弦乐应用的默认启动画面。发现SplashScreen.png默认包含在resources / images文件夹中,并用我自己的(相同的宽度和高度)覆盖它。启动画面没有改变。
我去看了Orchestra的代码并找到了SplashScreen视图。并且看到你有一个placelogo的占位符。
<Image Grid.Row="3" Grid.Column="0" Source="{Binding CompanyLogoForSplashScreenUri}" HorizontalAlignment="Left"
Margin="10" VerticalAlignment="Bottom" Stretch="Uniform" Opacity="0.7"
Visibility="{Binding CompanyLogoForSplashScreenUri, Converter={catel:ReferenceToCollapsingVisibilityConverter}}"/>
在视图模型上,我发现构造函数调用了IAboutInforService
public SplashScreenViewModel(IAboutInfoService aboutInfoService)
{
Argument.IsNotNull(() => aboutInfoService);
var aboutInfo = aboutInfoService.GetAboutInfo();
CompanyLogoForSplashScreenUri = aboutInfo.CompanyLogoForSplashScreenUri;
}
但GetAboutInfo返回的AboutInfo对象中的CompanyLogoForSplashScreenUri属性始终为null。构造函数永远不会添加uri引用。
public AboutInfo GetAboutInfo()
{
var aboutInfo = new AboutInfo(new Uri("pack://application:,,,/Resources/Images/CompanyLogo.png", UriKind.RelativeOrAbsolute));
return aboutInfo;
}
public AboutInfo(Uri companyLogoUri = null, string logoImageSource = null, string url = null, Assembly assembly = null, Uri companyLogoForSplashScreenUri = null)
那么我该如何将公司标识添加到启动画面?
答案 0 :(得分:1)
构造函数中有2个 CompanyLogoUri 。正如您可以通过变量名称看到的,两者都有其自己的目的:
我想你要设置第二个; - )