Ich mache etwa so:in der Lage, nicht Titel in einer Ansicht Caliburn.Micro Conductor zu ändern MahApps MetroWindow mit
<Controls:MetroWindow x:Class="BS.Expert.Client.App.Views.ShellView"
xmlns:Controls="clr-namespace:MahApps.Metro.Controls;assembly=MahApps.Metro"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
ShowTitleBar="True"
Title="My Title">
Die Sache ist, dass dies zugleich ein definierte Hauptleiter auf der Haupt Fenster, mit dem ich der Navigation durch andere Fenster zu steuern, so dass ich nicht in der Lage von MetroWindow zu erben, um zumindest versuchen, den Titel in dem Ansichtsmodell ändern:
public class ShellViewModel : Conductor<IScreen>.Collection.OneActive, IShell
{
public ShellViewModel()
{
#region mahApps Theme Loading
var theme = ThemeManager.DetectAppStyle(Application.Current);
var appTheme = ThemeManager.GetAppTheme(App.Configuration.Theme);
ThemeManager.ChangeAppStyle(Application.Current, theme.Item2, appTheme);
#endregion
//TODO: Changing Title here is not possible ((MetroWindow)this).Title = "No way";
// Tudo bem na seguinte liña
LocalizeDictionary.Instance.Culture = new System.Globalization.CultureInfo("pt-BR");
ShowPageOne();
}
public void ShowPageOne()
{
ActivateItem(new PageOneViewModel());
}
}
Wie soll ich den Titel ändern?
von MetroWindow Vererben und Einstellung, die Eigenschaft Titel isn Was willst du machen? Selbst wenn Sie die Vererbung geändert haben, können Sie den Titel der Ansicht auf diese Weise nicht vom Ansichtsmodell ändern. Das ShellView und ShellViewModel wären nur zwei verschiedene Instanzen eines MetroWindow. Wenn Sie den Titel implementieren möchten, implementieren Sie, was ich beschrieben habe, und legen Sie die MyTitle -Eigenschaft im Ansichtsmodell auf den gewünschten Wert. – TylerReid