gpt4 book ai didi

c# - 如何以编程方式保持自定义设置 Charm 弹出窗口打开?

转载 作者:太空狗 更新时间:2023-10-30 01:07:06 24 4
gpt4 key购买 nike

我在设置 super 按钮中创建了一个自定义的 AlarmSettingsPane,它允许用户指定时间并选择闹钟的音频文件。所以我在设置 charm 中实现了文件选择器。当我单击文件选择器按钮时,它会将我带到一个新的全屏,在那里我可以选择我的文件,但是当我选择一个文件并打开它时,我会被定向到我的主屏幕但设置魅力弹出窗口被关闭。如何保留 AlarmSettingsPane 弹出窗口的状态并防止它以编程方式关闭?就像设置弹出窗口应该包含与我选择文件之前相同的关于警报的信息。

SettingsPane.Show() 打开设置 super 按钮,但不会转到我在标准设置弹出窗口中创建的闹钟设置。

如果您有任何想法,请告诉我。谢谢

这是我的文件选择器按钮点击事件的代码

 private async void PickAFileButton_Click(object sender, RoutedEventArgs e)
{
FileOpenPicker openPicker = new FileOpenPicker();
openPicker.ViewMode = PickerViewMode.List;
openPicker.SuggestedStartLocation = PickerLocationId.MusicLibrary;
openPicker.FileTypeFilter.Add(".mp3");
openPicker.FileTypeFilter.Add(".wma");

StorageFile file = await openPicker.PickSingleFileAsync();
if (file != null)
{
// Application now has read/write access to the picked file
CustomSound.Text = file.Name;

}
else
{
CustomSound.Text = "Operation cancelled.";
}
}

最佳答案

我所做的是在调用 Picker 之前获取 UserControl.Parent 的副本并将其存储在函数本地,这可以防止 UI 处理程序将其标记为收集,并在选择器返回后选择父 IsOpen回到真实。

例如:

private function ()
{
Popup popup = this.Parent as Popup;

Picker Code

popup.IsOpen = true;
}

它可能不是最好的,但它确实很有效。

关于c# - 如何以编程方式保持自定义设置 Charm 弹出窗口打开?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13528598/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com