Tag: winrt xaml

在winRT MessageDialog中添加TextBox

我正在Windows 8商店应用程序中工作,我正在尝试弹出一个对话框,让用户在文本框中输入信息。 怎么做 ?

PointerDownThemeAnimation应用程序停止WP8

我很困惑为什么我的应用程序正在关闭,我添加了PointerDownThemeAnimation并且它工作正常但只有一次,当我再次点击它时,应用程序停止。 为什么? 这是我的代码: private void staryrynek1(object sender, PointerRoutedEventArgs e) { pointerDownStoryboard.Begin(); } private void staryrynek(object sender, PointerRoutedEventArgs e) { pointerUpStoryboard.Begin(); this.Frame.Navigate(typeof(StaryRynek)); } 和

当DataTemplate子项折叠时,如何隐藏ListView项占位符?

当CarViewControl的可见性设置为折叠时,它仍会显示以前的占位符(请参见下面的屏幕截图)。 有没有办法在Collapsed时完全隐藏ListViewItem ? XAML代码 在上图中,有三个CarViewControls被折叠,其次是一个没有。 一个突出显示。 我希望它们在内容折叠时完全不可见。 我尝试过的: 将DataTemplate控件的高度设置为0(只是为了查看它是否隐藏了无效的占位符 根据此文档将ShowsScrollingPlaceholders设置为False : MSDN ListView占位符 崩溃要求的原因 在每个CarViewControl中,存在一个WebView,其中包含一个安全令牌(它维护WebView登录到特定的Web站点)。 如果您尝试通过引用传递WebView,由于我只能假设是安全措施,您将丢失该安全令牌并且必须重新登录该站点。 这就是为什么在我的情况下从ObservableCollection添加/删除控件不起作用的原因。

检索位于WP8.1中应用程序的本地文件夹中的StorageFile(video)的缩略图

我正在尝试将ApplicationFile的缩略图放在应用程序的应用程序包(LocalFolder)中。 存储文件是媒体文件,可以是图像(jpg或png)或video(mp4或wmv)。 现在,当我尝试使用StorageFile类的GetThumbnailAsync(ThumbnailMode)方法获取缩略图时,我得到了一个 System.Exception:找不到组件。 错误,如果文件是图像或不在应用程序包内的video,同样的工作正常。 这是我正在使用的代码隐藏 StorageFile file; private async void BtnGetVideo_Click(object sender, RoutedEventArgs e) { StorageFolder folder = await Windows.ApplicationModel.Package.Current.InstalledLocation.GetFolderAsync(“Assets\\TestImgs”); file = await folder.GetFileAsync(“SMTest.mp4”); } private async void BtnGetThumb_Click(object sender, RoutedEventArgs e) { if (file != null) { BitmapImage image = new BitmapImage(); image.SetSource(await file.GetThumbnailAsync(ThumbnailMode.VideosView)); ImagePreview.Source = image; } } 这是它的xaml

在Metro应用程序中以编程方式设置图像源,图像不会出现

我的应用程序中有一个主页面和一个相机页面。 主页面的图像没有源设置和按钮。 如果单击该按钮,将转到相机页面。 在相机页面上,我捕获图像并将其保存在平板电脑上的图片库中,然后导航回主页面,我想将图像源设置为刚拍摄并保存在图片库中的图像。 这是我的相关代码。 MainPage.xaml中 MainPage.xaml.cs中 private void img_OnLoaded(object sender, RoutedEventArgs e) { if (txtFirstName.Text != “” && txtLastName.Text != “”) { try { imgResume.Source = ImageFromRelativePath(this, Windows.Storage.KnownFolders.PicturesLibrary.Path + ((App)Application.Current).candidate.FirstName + ((App)Application.Current).candidate.FirstName + “Resume.jpg”); imgResume.UpdateLayout(); } catch { imgResume.Source = ImageFromRelativePath(this, @”Assets/logo.png”); imgResume.UpdateLayout(); } btnCamera.IsEnabled = true; } } public static BitmapImage ImageFromRelativePath(FrameworkElement parent, […]

x:绑定转换器和FallbackValue不协作(UWP 10)

我有一个涉及大量代码的问题,但我把它隔离了。 如果你想要TL; DR; 进一步向下跳。 如果你想要一些上下文,这是我的情况: 我为我的绑定创建了三个数据转换器。 其中一个是“字符串前缀”:它为使用固定字符串放入的任何内容添加前缀。 在当前示例中,该固定字符串是”ms-appx:///cache/” 。 第二个将string类型转换为ImageSource ,第三个将多个转换器链接在一起。 然后我创建了一个名为LocalCacheFile的Xaml资源。 一切都按照您的想法运作。 Xaml代码看起来像这样: 但是,我遇到了以下问题。 如果我尝试使用FallbackValue为imageSource为空时放置占位符图像,我会在x:Bind奇怪的行为。 以下代码可以正常工作 : 但 才不是! 我已经将它分离到只有一个转换器,它是DependencyProperty.UnsetValue x:Bind似乎没有处理。 TL; DR; 这是我的字符串前缀的代码,如果我单独使用它作为测试触发相同的错误行为: public class StringPrefix : IValueConverter { public string prefix { get; set; } public object Convert(object value, Type typeName, object parameter, string language) { if (value == DependencyProperty.UnsetValue || value […]

SaveState / LoadState后无法设置MediaElement Source

( 注意:所有代码都已严格简化。 ) 问题 暂停/恢复后未设置MediaElement源。 设置源后,CurrentState会快速更改为“已关闭”。 我正在处理MediaFailed事件 – 它不会触发。 我也在处理MediaOpened事件,它也不会触发。 细节 我有以下方法更新MediaElement的Source。 只要应用程序在被暂停后没有尝试恢复,它就能很好地工作。 private async void UpdateMediaElementSource(object sender, EventArgs e) { var videoSource = this.DefaultViewModel.CurrentSource; // a string var file = await StorageFile.GetFileFromPathAsync(videoSource); var videoStream = await file.OpenAsync(FileAccessMode.Read); this.videoMediaElement.SetSource(videoStream, file.ContentType); // The above line works many times as long as the app is not trying […]

如何为具有可变高度的弹出窗口设置垂直偏移量

我正在使用C#/ XAML开发Windows 8 (我知道Windows 8.1具有Flyout控制)应用程序。 我想显示如下所示的弹出菜单。 现在最初它有10个选项,但根据上下文我显示了一定数量的选项,因此用户控件没有固定的高度,它是自动的。 我按照这篇文章在appbar按钮点击上正确显示flyout。 但它对我没用,因为它使用的是usercontrol的高度,而对于我的情况来说它是NaN 。 所以任何人都有更好的解决方案来展示高度可变的弹出窗口。 PS:我不想将Callisto用于单一要求。 弹出用户控制。 (ExportTypes.xaml) 在MainPage.xaml.cs中下载按钮单击事件 private void btnDownload_Click(object sender, RoutedEventArgs e) { var ucExportTypes = new ExportTypes(); var flyout = new Popup(); var windowBounds = Window.Current.Bounds; var rootVisual = Window.Current.Content; var gt = btnDownload.TransformToVisual(rootVisual); var absolutePosition = gt.TransformPoint(new Point(0, 0)); flyout.IsLightDismissEnabled = true; flyout.VerticalOffset = […]

虚拟化不会更改新可见项的属性

我目前在listView中使用自定义Image对象( 对象周围的包装器)。 当新的列表视图项可见(已实现)时,我的自定义Image对象的属性不会更改。 例如,如果我的列表视图(包含具有不同图像URL和不同文本的30个项目)在第一个滚动上具有3个项目,则第10个项目具有与第一个项目相同的图像。 图像按[1-9] [1-9] [1-9]的顺序重复….但令我惊讶的是,所有30个listViewItem中的文本都不同。 在调试时,我发现只为前9个项目调用了我的图像对象的setter。 有人能否了解其他系统组件(System Image / TextBlock正常工作)如何获得新的元素值? 相关类属性的代码片段: public sealed partial class CustomImage : UserControl { public static readonly DependencyProperty ImageSourceStringProperty = DependencyProperty.Register(“ImageSourceString”, typeof(string), typeof(CustomImage), new PropertyMetadata(null, new PropertyChangedCallback(ImageSourceStringChanged))); public string ImageSourceString { get { return (string)GetValue(ImageSourceStringProperty); } set { //THIS NEVER GETS HIT FOR ITEMS AFTER 9th ITEM SetValue(ImageSourceStringProperty, […]

如何绑定到UWP中的附加属性?

我需要将控件的属性绑定到XAML中的附加属性(以便附加属性成为绑定的源),我无法弄清楚如何做到这一点 – VS2015给了我“ 价值不会下降在预期范围内 “错误,当我运行应用程序时,我得到一个例外。 下面显示的技术在WPF中完美运行。 以下是演示此问题的示例应用程序。 AttachedPropertyTest.cs: namespace App7 { public static class AttachedPropertyTest { public static readonly DependencyProperty FooProperty = DependencyProperty.RegisterAttached( “Foo”, typeof(string), typeof(AttachedPropertyTest), new PropertyMetadata(“Hello world!”)); public static void SetFoo(DependencyObject element, string value) { element.SetValue(FooProperty, value); } public static string GetFoo(DependencyObject element) { return (string) element.GetValue(FooProperty); } } } MainPage.xaml中: 而不是显示“Hello world!” […]