-
win10系统UWP应用过多C盘空间不够用?一招帮你更改默认安装位置
2018-05-23 14:00:18一招帮你更改默认安装位置我们都知道在win10系统中自带了UWP应用商店,我们可以在里面下载很多功能强大的UWP应用。由于默认应用安装的位置是在C盘,这样如果你的系统盘C盘分配的空间不是很大的话,时间长了会发现...win10系统UWP应用过多C盘空间不够用?一招帮你更改默认安装位置
我们都知道在win10系统中自带了UWP应用商店,我们可以在里面下载很多功能强大的UWP应用。由于默认应用安装的位置是在C盘,这样如果你的系统盘C盘分配的空间不是很大的话,时间长了会发现空间不过,这些UWP应用默认都是安装在C盘下,对C盘比较小的用户而言是个不小的压力。那么,对于C盘空间不够大的用户该如何解决这个问题呢?能不能把UWP应用安装到其他磁盘分区中。
当然可以,具体我们可以通过如下的方式解决:
通过设置进入到存储找到“更改新内容的保存位置”并对其中的一些项进行设置就可以了。
具体步骤
http://www.lmdouble.com/1015161788.htm
IT技术资料分享-个人整理自互联网l
-
使用Xamarin.Forms构建UWP应用
2015-11-22 00:01:17然后建一个UWP空应用 再在NuGet包管理器中安装Xamarin.Forms的2.0.0版本 换回第一个建的Xamarin.Forms项目,把UWP项目添加到子项目 然后再这个子项目中添加对此项目的引用 再设置下部署 打开UWP项目的App....先要建一个Xamarin.Forms项目,并把Xamarin.Forms升到2.0.0
然后建一个UWP空应用
再在NuGet包管理器中安装Xamarin.Forms的2.0.0版本换回第一个建的Xamarin.Forms项目,把UWP项目添加到子项目
然后再这个子项目中添加对此项目的引用
再设置下部署
打开UWP项目的App.xaml.cs
在这个位置添加
Xamarin.Forms.Forms.Init (e);
报错先别理会然后打开MainPage.xaml
修改根元素为forms:WindowsPage
如图
此时会出现设计器无法使用的情况还有报错,不用理他继续打开MainPage.xaml.cs文件
删掉继承,并加上
this.LoadApplication(new App1.App());
如图到这就完成了。
运行 -
SCCM TP4部署UWP应用之证书分发
2017-11-14 00:57:00SCCM TP4部署UWP应用之证书分发 1、导入证书 打开SCCM管理器,定位到:“资产和符合性”—“符合性设置”—“公司资源访问”—“证书认证”并鼠标右键“证书认证”—“创建证书认证”: 指定证书名称及证书类型,...SCCM TP4部署UWP应用之证书分发
1、导入证书
打开SCCM管理器,定位到:“资产和符合性”—“符合性设置”—“公司资源访问”—“证书认证”并鼠标右键“证书认证”—“创建证书认证”:
指定证书名称及证书类型,点击下一步:
指定证书文件位置,点击下一步:
在支持平台位置勾选“Windows 10”
摘要位置,确认没有问题,点击下一步:
2、部署证书
打开SCCM管理器,定位到:“资产和符合性”—“符合性设置”—“公司资源访问”—“证书认证”,鼠标右键之前导入的证书,选择“部署”:
在此选择部署类型及部署时间然后点击下一步:
部署完成以后SCCM管理器如下图所示:
3、验证证书
打开Windows 10客户端的控制面板,点击“Configuration Manager”—“ Configurations”,可以看到证书已经成功下发:
打开受信任的根证书颁发机构,可以看到证书“zhuxc”已经成功安装:
本文转自wuyvzhang 51CTO博客,原文链接:http://blog.51cto.com/wuyvzhang/1787575,如需转载请自行联系原作者
-
uwp多媒体应用
2018-04-28 23:20:45作业要求 具体实现 MainPage.xaml MainPage.xaml.cs PositionSliderConverter.cs 参考链接 资源以及演示视频 ...使用MediaElement或MediaPlayer打造一个...同时,拖动进度条,可以使媒体快速前进,后退到相应的位置...作业要求
- 使用MediaElement或MediaPlayer打造一个播放器,可播放视频和音乐
- 实现暂停,播放,停止等操作
- 实现进度条,实时显示媒体的播放速度;同时,拖动进度条,可以使媒体快速前进,后退到相应的位置
- 播放视频时,可全屏显示、退出全屏
- 可手动选择本地的媒体资源进行播放
- 实现封面旋转:播放音乐时,封面开始旋转,播放结束,封面复位,暂停时,封面的旋转动作暂停,播放视频的时候封面隐藏
具体实现
MainPage.xaml
<Page x:Class="week8.MainPage" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:local="using:week8" xmlns:d="http://schemas.microsoft.com/expression/blend/2008" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" mc:Ignorable="d"> <Page.Resources> <local:PositionSliderConverter x:Key="converter" /> <Storyboard x:Name="AvrilStoryboard" RepeatBehavior="Forever"> <DoubleAnimation Duration="0:0:20" To="360" Storyboard.TargetProperty="(UIElement.RenderTransform).(CompositeTransform.Rotation)" Storyboard.TargetName="Picture" d:IsOptimized="True"/> </Storyboard> </Page.Resources> <Page.BottomAppBar> <CommandBar> <AppBarButton x:Name="ButtonPlay" Icon="Play" Click="ButtonPlay_Click"/> <AppBarButton x:Name="ButtonPause" Icon="Pause" Click="ButtonPause_Click"/> <AppBarButton x:Name="ButtonStop" Icon="Stop" Click="ButtonStop_Click"/> <AppBarButton x:Name="ButtonFullScreen" Icon="FullScreen" Click="ButtonFullScreen_Click"/> <AppBarButton x:Name="ButtonFolder" Icon="Folder" Click="ButtonFolder_Click"/> <AppBarButton x:Name="ButtonVolume" Icon="Volume" Click="ButtonVolume_Click"/> </CommandBar> </Page.BottomAppBar> <Grid Background="{ThemeResource ApplicationPageBackgroundThemeBrush}"> <Grid.RowDefinitions> <RowDefinition Height="100"/> <RowDefinition Height="*"/> <RowDefinition Height="100"/> </Grid.RowDefinitions> <Grid.ColumnDefinitions> <ColumnDefinition Width="*"/> <ColumnDefinition Width="*"/> <ColumnDefinition Width="*"/> </Grid.ColumnDefinitions> <Ellipse Grid.Row="1" Grid.Column="1" x:Name="Picture" Height="250" Width="250" Visibility="Collapsed" RenderTransformOrigin="0.5, 0.5"> <Ellipse.RenderTransform> <CompositeTransform /> </Ellipse.RenderTransform> <Ellipse.Fill> <ImageBrush ImageSource="Assets/1.jpg"/> </Ellipse.Fill> </Ellipse> <MediaPlayerElement x:Name="_mediaPlayerElement" HorizontalAlignment="Stretch" Grid.Row="1" Grid.Column="1"/> <StackPanel Grid.Row="2" Grid.Column="1"> <Slider x:Name="sliderLine" Value="{x:Bind _mediaTimelineController.Position, Converter={StaticResource converter},Mode=TwoWay}"/> </StackPanel> <Slider Grid.Row="2" Grid.Column="2" Minimum="0" Maximum="1" x:Name="Volumn" Width="100" Value="0.5" StepFrequency="0.1" ValueChanged="Volumn_ValueChanged" Orientation="Vertical" HorizontalAlignment="Right" Visibility="Collapsed"/> </Grid> </Page>
<local:PositionSliderConverter x:Key="converter" />
,转换器,用于拖动Slider进度的时候,改变视频或音乐的进度。Storyboard
,实现动画的控件,这定义了一个旋转的动画。<Slider Grid.Row="2" Grid.Column="2" Minimum="0" Maximum="1" x:Name="Volumn" Width="100" Value="0.5" StepFrequency="0.1" ValueChanged="Volumn_ValueChanged" Orientation="Vertical" HorizontalAlignment="Right" Visibility="Collapsed"/>
这个是用来做声音的,没找到可以和声音图片绑定的方法,所以就直接用宽度调节到相应的位置上,用的是垂直方向的Slider,当点声音按钮的时候,就会出现,再点击就会消失。
MainPage.xaml.cs
using System; using System.Collections.Generic; using System.IO; using System.Linq; using System.Runtime.InteropServices.WindowsRuntime; using Windows.Foundation; using Windows.Foundation.Collections; using Windows.Media; using Windows.Media.Core; using Windows.Media.Playback; using Windows.Storage; using Windows.Storage.Pickers; using Windows.UI.ViewManagement; using Windows.UI.Xaml; using Windows.UI.Xaml.Controls; using Windows.UI.Xaml.Controls.Primitives; using Windows.UI.Xaml.Data; using Windows.UI.Xaml.Input; using Windows.UI.Xaml.Media; using Windows.UI.Xaml.Navigation; // https://go.microsoft.com/fwlink/?LinkId=402352&clcid=0x804 上介绍了“空白页”项模板 namespace week8 { /// <summary> /// 可用于自身或导航至 Frame 内部的空白页。 /// </summary> public sealed partial class MainPage : Page { MediaPlayer _mediaPlayer = new MediaPlayer(); MediaTimelineController _mediaTimelineController = new MediaTimelineController(); TimeSpan _duration; public MainPage() { this.InitializeComponent(); _mediaPlayer = new MediaPlayer(); var mediaSource = MediaSource.CreateFromUri(new Uri("ms-appx:///Assets/DarkSouls.mp4")); mediaSource.OpenOperationCompleted += MediaSource_OpenOperationCompleted; _mediaPlayer.Source = mediaSource; _mediaPlayer.CommandManager.IsEnabled = false; _mediaPlayer.TimelineController = _mediaTimelineController; _mediaPlayerElement.SetMediaPlayer(_mediaPlayer); } private void ButtonPlay_Click(object sender, RoutedEventArgs e) { DispatcherTimer timer = new DispatcherTimer(); timer.Interval = TimeSpan.FromSeconds(1); timer.Tick += timer_Tick; timer.Start(); AvrilStoryboard.Begin(); if (_mediaTimelineController.State == MediaTimelineControllerState.Paused) { _mediaTimelineController.Resume(); } else { _mediaTimelineController.Start(); } } void timer_Tick(object sender, object e) { sliderLine.Value = ((TimeSpan)_mediaTimelineController.Position).TotalSeconds; if (sliderLine.Value == sliderLine.Maximum) { _mediaTimelineController.Position = TimeSpan.FromSeconds(0); } } private void ButtonPause_Click(object sender, RoutedEventArgs e) { _mediaTimelineController.Pause(); AvrilStoryboard.Pause(); } private void ButtonStop_Click(object sender, RoutedEventArgs e) { AvrilStoryboard.Stop(); _mediaTimelineController.Position = TimeSpan.FromSeconds(0); _mediaTimelineController.Start(); _mediaTimelineController.Pause(); } private void ButtonFullScreen_Click(object sender, RoutedEventArgs e) { ApplicationView view = ApplicationView.GetForCurrentView(); bool isInFullScreenMode = view.IsFullScreenMode; if (isInFullScreenMode) { view.ExitFullScreenMode(); } else { view.TryEnterFullScreenMode(); } _mediaPlayerElement.IsFullWindow = !_mediaPlayerElement.IsFullWindow; } private async void MediaSource_OpenOperationCompleted(MediaSource sender, MediaSourceOpenOperationCompletedEventArgs args) { _duration = sender.Duration.GetValueOrDefault(); await Dispatcher.RunAsync(Windows.UI.Core.CoreDispatcherPriority.Normal, () => { sliderLine.Minimum = 0; sliderLine.Maximum = _duration.TotalSeconds; sliderLine.StepFrequency = 1; }); } private async void ButtonFolder_Click(object sender, RoutedEventArgs e) { var openPicker = new FileOpenPicker(); openPicker.SuggestedStartLocation = Windows.Storage.Pickers.PickerLocationId.VideosLibrary; openPicker.FileTypeFilter.Add(".wmv"); openPicker.FileTypeFilter.Add(".mp4"); openPicker.FileTypeFilter.Add(".mp3"); openPicker.FileTypeFilter.Add(".wma"); StorageFile file = await openPicker.PickSingleFileAsync(); if (file != null) { var mediaSource = MediaSource.CreateFromStorageFile(file); mediaSource.OpenOperationCompleted += MediaSource_OpenOperationCompleted; _mediaPlayer.Source = mediaSource; if (file.FileType == ".mp3" || file.FileType == ".wma") { Picture.Visibility = Visibility.Visible; } else { Picture.Visibility = Visibility.Collapsed; } } } private void Volumn_ValueChanged(object sender, RoutedEventArgs e) { _mediaPlayer.Volume = (double)Volumn.Value; } private void ButtonVolume_Click(object sender, RoutedEventArgs e) { if(Volumn.Visibility == Visibility.Collapsed) { Volumn.Visibility = Visibility.Visible; } else { Volumn.Visibility = Visibility.Collapsed; } } } }
MediaTimelineController
用来调节时间线,因为直接用MediaPlayer
来调节有很大的局限性,所以用MediaTimelineController
来代替。MediaTimelineController
几个函数的解释,Resume
,从当前位置继续播放,Start
从开始位置播放,所以即使是正在播放,按下播放按钮还是重头播放,Pause
暂定在现在的位置,所以在暂定之后,点击播放按钮的时候要判断是否是暂定状态,否则就会从头播放。如果要实现Stop
功能直接Start
再接Pause
就可以了。DispatcherTimer
这个作用是随着时间,进度条会前进,如果没有相关的设置,虽然可以用进度条控制视频的进度,但是进度条是不会自己动的,所以还要把视频的进度赋给Slider的value。AvrilStoryboard
是之前Storyboard
的名字,因为我用的是Avril的封面,所以就取了这个名字,AvrilStoryboard
的Begin
,Pause
,Stop
是对应的。- 让
MediaPlayer
全屏,这个是比较难受的,因为实现方法是_mediaPlayerElement.IsFullWindow = !_mediaPlayerElement.IsFullWindow;
,这个必须要吐槽一下,用一个返回值是bool
类型的函数控制是否全屏,不是太奇怪了吗,我本来还想找set
前缀的函数,真是太年轻了。
PositionSliderConverter.cs
用于Slider位置转换成视频进度条的转换器
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using Windows.UI.Xaml.Data; namespace week8 { class PositionSliderConverter : IValueConverter { public object Convert(object value, Type targetType, object parameter, string language) { return ((TimeSpan)value).TotalSeconds; } public object ConvertBack(object value, Type targetType, object parameter, string language) { return TimeSpan.FromSeconds((double)value); } } }
参考链接
资源以及演示视频
-
用C#开发了四天的UWP应用有感
2019-09-23 19:07:53第一个就是异步方法,async-await,所谓async关键字,并没有什么实际上的语法意义,只是写在函数签名的位置让编译器方便进行查找以及静态检查,并且提醒程序员这是一个异步方法而已。至于await,这是一个运算符,... -
TeslaCamMap:UWP应用程序,可在地图上显示Tesla Dashcam和Sentry事件,并允许视频播放-源码
2021-03-08 15:48:34要更改视频中的位置,您需要拖动滑块的拇指,“仅”单击滑块中的位置不起作用。 在事件的视频片段之间跳得太快会导致崩溃。 如果特斯拉对这些文件的生成方式进行任何更改,它将损坏。 仅在2020年 -
UWPHook::link:将Windows应用商店或UWP游戏添加到Steam-源码
2021-02-05 02:58:29UWPHook 将UWP游戏和XboxGamePass链接到Steam的小项目 如果您想将Windows Store或Xbox... 点击 :counterclockwise_arrows_button: 要加载已安装的UWP应用,我们将在您的PC上找到所有安装的UWP应用和Xbox Game Pass游戏 -
新的UWP和Win32应用程序分发模型
2018-08-19 05:14:46在ClickOnce模型中,WinForms和WPF应用程序在启动时会从预先配置好的位置查找新版本。但是,由于微软试图模仿iOS应用商店模型,所以,该模型未能延续到UWP。\u0026#xD;\u0026#xD;微软意识到,他们的大多数客户无法将... -
UWP-Resources-Gallery:UWP系统资源的交互式伴侣-源码
2021-04-02 19:13:25该应用程序显示Windows 10提供给UWP应用程序的资源,例如Segoe MDL2图标和系统颜色。 您现在可以下载UWP资源库。 此应用程序的想法基于XAML控件库。 可以在以下位置找到XAML控件库: : UWP资源库显示: Windows ...