我正在研究 Microsoft 的一些 C# 示例,主要是 MainPage.xaml.cs 文件。在那个文件中,一些事件引起了我的注意:MainPage_SizeChanged
和Scenarios_SelectionChanged
. 这两个事件都在构造函数中注册。还声明了两个事件处理程序区域:
public event System.EventHandler ScenarioLoaded;
public event EventHandler<MainPageSizeChangedEventArgs> MainPageResized;
它们用于以下方法:
void MainPage_SizeChanged(object sender, SizeChangedEventArgs e)
{
InvalidateSize();
if (MainPageResized != null)
{
MainPageSizeChangedEventArgs args = new MainPageSizeChangedEventArgs();
args.ViewState = ApplicationView.Value;
MainPageResized(this, args);
}
}
void Scenarios_SelectionChanged(object sender, SelectionChangedEventArgs e)
{
if (Scenarios.SelectedItem != null)
{
NotifyUser("", NotifyType.StatusMessage);
ListBoxItem selectedListBoxItem = Scenarios.SelectedItem as ListBoxItem;
SuspensionManager.SessionState["SelectedScenarioIndex"] = Scenarios.SelectedIndex;
Scenario scenario = selectedListBoxItem.Content as Scenario;
LoadScenario(scenario.ClassType);
InvalidateSize();
if (ScenarioLoaded != null)
{
ScenarioLoaded(this, new EventArgs());
}
}
}
在文件中没有注册ScenarioLoaded
and的地方MainPageResized
。那么谁负责注册以及注册在哪里?