本文整理汇总了C#中IViewContent.SwitchToThisWithoutSaveLoad方法的典型用法代码示例。如果您正苦于以下问题:C# IViewContent.SwitchToThisWithoutSaveLoad方法的具体用法?C# IViewContent.SwitchToThisWithoutSaveLoad怎么用?C# IViewContent.SwitchToThisWithoutSaveLoad使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类IViewContent
的用法示例。
在下文中一共展示了IViewContent.SwitchToThisWithoutSaveLoad方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: SwitchedToView
protected void SwitchedToView(IViewContent newView)
{
if (currentView != null) {
if (newView.SupportsSwitchToThisWithoutSaveLoad(this, currentView)
|| currentView.SupportsSwitchFromThisWithoutSaveLoad(this, newView))
{
// switch without Save/Load
currentView.SwitchFromThisWithoutSaveLoad(this, newView);
newView.SwitchToThisWithoutSaveLoad(this, currentView);
currentView = newView;
return;
}
}
if (currentView != null) {
SaveCurrentView();
}
try {
inLoadOperation = true;
Properties memento = GetMemento(newView);
using (Stream sourceStream = OpenRead()) {
currentView = newView;
fileData = null;
newView.Load(this, sourceStream);
}
RestoreMemento(newView, memento);
} finally {
inLoadOperation = false;
}
}
示例2: SwitchedToView
public void SwitchedToView(IViewContent newView)
{
if (newView == null)
throw new ArgumentNullException("newView");
if (currentView == newView)
return;
if (currentView != null) {
if (newView.SupportsSwitchToThisWithoutSaveLoad(this, currentView)
|| currentView.SupportsSwitchFromThisWithoutSaveLoad(this, newView))
{
// switch without Save/Load
currentView.SwitchFromThisWithoutSaveLoad(this, newView);
newView.SwitchToThisWithoutSaveLoad(this, currentView);
currentView = newView;
return;
}
SaveCurrentView();
}
try {
inLoadOperation = true;
Properties memento = GetMemento(newView);
using (Stream sourceStream = OpenRead()) {
IViewContent oldView = currentView;
bool success = false;
try {
currentView = newView;
// don't reset fileData if the file is untitled, because OpenRead() wouldn't be able to read it otherwise
if (this.IsUntitled == false)
fileData = null;
newView.Load(this, sourceStream);
success = true;
} finally {
// Use finally instead of catch+rethrow so that the debugger
// breaks at the original crash location.
if (!success) {
// stay with old view in case of exceptions
currentView = oldView;
}
}
}
RestoreMemento(newView, memento);
} finally {
inLoadOperation = false;
}
}
示例3: SwitchedToView
public void SwitchedToView(IViewContent newView)
{
if (newView == null)
throw new ArgumentNullException("newView");
if (currentView == newView)
return;
if (currentView != null) {
if (newView.SupportsSwitchToThisWithoutSaveLoad(this, currentView)
|| currentView.SupportsSwitchFromThisWithoutSaveLoad(this, newView))
{
// switch without Save/Load
currentView.SwitchFromThisWithoutSaveLoad(this, newView);
newView.SwitchToThisWithoutSaveLoad(this, currentView);
currentView = newView;
return;
}
}
if (currentView != null) {
SaveCurrentView();
}
try {
inLoadOperation = true;
Properties memento = GetMemento(newView);
using (Stream sourceStream = OpenRead()) {
currentView = newView;
// don't reset fileData if the file is untitled, because OpenRead() wouldn't be able to read it otherwise
if (this.IsUntitled == false)
fileData = null;
newView.Load(this, sourceStream);
}
RestoreMemento(newView, memento);
} finally {
inLoadOperation = false;
}
}