Freeman의 책 "Metro Revealed"(BTW는 지금까지 사용 가능한 것들 중 최고 였고, 100 페이지 이하 였음)에서 수집 할 수있는 것을 토대로, 설정 플라이 아웃 (팝업).내 팝업을 어떻게 참조 할 수 있습니까?
이 사용자 제어/팝업은 다음과 같습니다 :
나는이 관련 코드가<UserControl
x:Class="TimeAndSpaceLines.View.TSLsSettings"
. . .
<Popup x:Name="popupSectionName" IsLightDismissEnabled="True" >
. . .
</Popup>
</UserControl>
"메인"페이지의 XAML :
<common:LayoutAwarePage
x:Name="pageRoot"
. . .
xmlns:settingsflyout="using:TimeAndSpaceLines.View"
. . .
</Grid>
<settingsflyout:TSLsSettings x:Name="hubPageSettingsFlyout"/>
<VisualStateManager.VisualStateGroups>
. . .
"메인을 "페이지의 적절한"코드 숨김 ":
그러나 0public ItemsPage()
{
InitializeComponent();
SettingsPane.GetForCurrentView().CommandsRequested += OnSettingsPaneCommandRequested;
}
private void OnSettingsPaneCommandRequested(SettingsPane sender, SettingsPaneCommandsRequestedEventArgs args)
{
// Add the commands one by one to the settings panel
args.Request.ApplicationCommands.Add(new SettingsCommand("commandSetSection1Name",
"Change the name of Section 1", SetAndSaveSectionNames));
. . .
}
, 내가이 길을 열려고 :
private void SetAndSaveSectionNames(IUICommand command)
{
TimeAndSpaceLines.View.TSLsSettings.popupSectionName.IsOpen = true;
. . .
}
나는 맞이 해요 :
An object reference is required for the non-static field, method, or property
'TimeAndSpaceLines.View.TSLsSettings.popupSectionName'
과 : 아직
'TimeAndSpaceLines.View.TSLsSettings.popupSectionName' is inaccessible due to its protection level
popupSectionName
수업이 아니며 클래스가 상주하는 클래스입니다. s는 공개입니다. 어떻게해야합니까?
의 SetAndSaveSectionNames는 호출이 hubPageSettingsFlyout.popupSectionName.IsOpen = true가 아니어야합니다. –
교체 할 때 : TimeAndSpaceLines.View.TSLsSettings.popupSectionName.IsOpen = true; with this : hubPageSettingsFlyout.popupSectionName.IsOpen = true; ... "TimeAndSpaceLines.View.TSLsSettings."가 표시됩니다.popupSectionName은 '인해 보호 수준 " 는 XAML에서 hubPageSettingsFlyout에 대한 선언은 그래서 난 아직도 혼동하고있어 아마 그것을 가지고있다. 모든 잘못, 나는 다시 걸음을 다시 시작해야합니다 –