ich diese Methode im Hinblick Modell verwenden, um auf neues Fenster zu öffnen:IEnumerable <IResult> - Caliburn micro
public IEnumerable<IResult> OpenChatScreen()
{
if (!_activeChatScreens.ContainsKey(nick))
{
var chatScreen = new ShowWindow("ChatScreen")
.InitializeWith(_service.DetailData(nick));
_activeChatScreens.Add(nick, chatScreen);
yield return chatScreen;
}
}
Diese Methode ist zum Beispiel binden auf diese Schaltfläche.
Ich versuche diese Methode in anderen Void-Methode verwenden. Etwas wie dieses:
public void SomeMethod(string nick)
{
OpenChatScreen(nick);
}
Aber es öffnet kein neues Fenster. Es ist möglich, dieses Problem zu lösen? Ich brauche OpenChatScreen-Methode in anderen Methode typeof void und ich möchte ein neues Fenster öffnen, wenn es möglich ist. Danke für die Hilfe.
Um codekaizen:
Ich versuche dies:
public void SomeMethod(string nick)
{
new IResult[] { OpenChatScreen(nick) };
}
ich diesen Fehler:
* Fehler 2 kann nicht implizit Typ umwandeln 'System.Collections.Generic.IEnumerable' zu "Caliburn.Micro.IResult". Es gibt eine explizite Konvertierung (fehlt eine Umwandlung?) C: \ Benutzer \ Jan \ Dokumente \ Visual Studio 2010 \ Projekte \ C# \ Pokec_Messenger \ ver.beta \ Pokec__Messenger \ Spirit_Caliburn_Micro_v1.1 \ ViewModels \ MessengerViewModel.cs 314 45 Spirit_Caliburn_Micro_v1. 1 *
Also versuche ich zu iResult Stimmen:
var w = OpenChatScreen(rp.Nick) as IResult;
new IResult[] { w };
Fehler:
* Fehler 1 Nur Zuordnung, Anruf, Erhöhung, Senkung und neue Objekt Ausdrücke können als Aussage C verwendet werden: \ Benutzer \ Jan \ Dokumente \ Visual Studio 2010 \ Projekte \ C# \ Pokec_Messenger \ ver.beta \ Pokec__Messenger \ Spirit_Caliburn_Micro_v1.1 \ ViewModels \ MessengerViewModel.cs 314 29 Spirit_Caliburn_Micro_v1.1 *
Ich habe keine Ahnung, wie die OpenChatScreen-Methode in der void-Methode verwendet wird.