分享案例一则,报错信息如下: create user 'someuser'@'localhost' identified by 'somepassword'; ERROR 1396 (HY000
> <VisualState...source 为空,则进入 Unloaded 状态;否则进入 Loading 状态;判断 source 是 ImageSource 类型且有效,则赋值,然后进入 Loaded 状态;如果 source...是 Uri 类型但无效,或 ImageSource 类型无效,则进入 Failed 状态;如果 Uri 有效,判断为 httpUri 则进入 LoadImageAsync(uri) 方法,否则直接拼接...,则进入 Failed 状态;如果是本地资源,或 http 资源不允许缓存,则直接实例化,不做缓存操作; private async Task LoadImageAsync(Uri imageUri)...,ImageEx 和 RoundImageEx,如下图一是加载中的过渡状态,图二是正常显示的状态;如果 Source 设置有误,则会出现图三只显示 PlaceHolder 的情况,实际应用中,在图片加载失败时我们应该有对应的显示方法
系列文章 UWP入门教程1——UWP的前世今生 如上文所说的,布局面板根据可用的屏幕空间,指定界面元素的大小和位置。例如StackPanel 会水平或垂直排列界面元素。...UI UWP 提供自适应可视化状态,可根据窗口大小来调整状态值。...StateTriggers定义了一个阈值,达到阈值则触发可视化状态。下面示例了,当窗口大于720像素,wideView 状态则被触发,游戏面板重新排列,如图所示: ?... 创建UWP可使用的工具 创建App时,通常会明确目标设备,当需要在设备中预览App,可以使用VS中的Preview toolbar(预览工具箱)查看App,可以模拟不同的设备,如PC,...如果想同时调用很多API,可以使用ApiInformation.IsTypePresent 方法,如下: // Note: Cache the value instead of querying
在针对特定屏幕宽度优化应用 UI 时,我们将此称为创建响应式设计。WPF设计之初响应式设计的概念并不流行,那时候大部分网页设计师都按着宽度960像素的标准设计。...MinWindowWidth="720" /> <VisualState.Setters...定制布局 如果AdaptiveTrigger需要设置的属性太多,倒不如直接切换UI,最简单的做法是整个显示/隐藏,例如这样: <Setter Target...如果要用在文件夹,格式如下: DeviceFamily- [qualifierString] ?
本文主要说如何设置我们窗口的启动大小,UWP启动窗口大小。...ApplicationViewWindowingMode.PreferredLaunchViewSize; ApplicationView.PreferredLaunchWindowingMode 设置UWP...窗口全屏 在手机没有用,手机就全屏,其他没用 如果设置过屏幕大小导致了每次开启窗口都变小,那么可以简单使用(下面代码没有测试) ApplicationView.PreferredLaunchWindowingMode...的标题栏问题,我们通过设置了ExtendViewIntoTitleBar=true,导致了没有标题栏,但是如果我们之后设置了false,程序关闭后发现并没有用,简单的方法 var...,我写在View的变窄,这样写有比较好的效率,一般需要获得是在窗口变化大,如果变化小,不需要进行获得。
我们在xaml创建一个Pivot ...参见: http://stackoverflow.com/questions/31797875/overriding-pivot-header-foreground-brushes-in-uwp-app-win...-10-rtm-sdk 但是如果我们要修改多的Pivot,使用模板其实还不能修改不选中的Pivot Header的颜色 我写了一个Style,可以直接复制到需要使用Pivot的Grid资源...,请自己去看style可以修改的颜色,如果遇到问题,欢迎讨论。...代码 https://github.com/lindexi/UWP/tree/master/uwp/src/PivoHeader ----
我们在xaml创建一个Pivot ...-10-rtm-sdk 但是如果我们要修改多的Pivot,使用模板其实还不能修改不选中的Pivot Header的颜色 我写了一个Style,可以直接复制到需要使用Pivot的Grid资源...是鼠标移到 没被选择的PivotHeader 上的颜色 PivotHeaderSelectedPointerOverForegroundBrush 是鼠标移到 被选择的PivotHeader 上的颜色 如果希望修改其他颜色...,请自己去看style可以修改的颜色,如果遇到问题,欢迎讨论。...代码 https://github.com/lindexi/UWP/tree/master/uwp/src/PivoHeader
在这前,我们先说如何制作主题,其实主题就是Dictionary,我们在解决方案加上两个文件夹,一个是View,一个是ViewModel,其中View将会放主题,如果主题比较多,还可以在View加一个文件夹...我们建立ViewModel,其中ViewModel继承NotifyProperty,这是一个我写的类,这个类主要是INotifyPropertyChanged,如果自己写ViewModel也好 ViewModel...参见:https://embracez.xyz/xaml-uwp-themes/ 我们总是会使用白天,夜间模式,那么我们需要切换主题,UWP切换主题简单 下面使用我做的一个按钮 夜间白天主题按钮 NightDayThemeToggleButton...我做的还有游戏键,这些都是可以简单使用的控件 这些控件放在https://github.com/lindexi/UWP,大家可以拿下来用。...UWP 和系统一样的主题 UWP如果想保持主题和系统一样,随着系统主题,简单方法,在App.xaml,删除RequestedTheme="Light" 因为在UWP,没有给他一个值,就会和系统一样,但是在我们
单例模式解决了一个全局使用的类频繁地创建与销毁。
去年在云之幻大佬的 哔哩 项目里看到一键三连的 UWP 实现,觉得挺有趣的,这次参考它的代码重新实现一次,最终成果如下: ?...> <Setter...首先创建三个 ProgressButton, 然后互相双向绑定 Value 的值并订阅事件: <lab:ProgressButton x:Name="LikeButton"...最后 很久没有认真写 UWP 的博客了,我突然有了个大胆的想法,在这个时间点,会不会就算我胡说八道都不会有人认真去验证我写的内容?毕竟现在写 UWP 的人又不多。...不过放心,我对 UWP 是认真的,我保证我是个诚实的男人。 不过这个一键三连功能做出来后,又好像,完全没机会用到嘛。难得都做出来了,就用来皮一下。
CornerRadius 设置按钮使用圆角 在 Xamarin 中可以方便进行样式定义或不进行定义样式只修改属性而改变外观,如按钮的圆角可以通过 CornerRadius 属性设置 按钮使用圆角时,如果更改边框的颜色建议同时更改边框的宽度和边框颜色...,在不同的平台下默认的样式不相同的,如果想要保持各个平台统一的外观,虽然这样不是好主意,那么请设置固定的值,而不是采用默认值 <Button Font="Large" Text=...Transparent" BorderColor="Aquamarine" BorderWidth="2"/> 此时就创建了一个圆角的按钮...因为在 UWP 中 BorderWidth 是 2 而在 Android 中是 0 也就是此时如果干掉了背景颜色,将看不到按钮的圆角 ?...设置按钮背景透明可以通过设置 BackgroundColor 为 Transparent 属性 如果需要让按钮点击时呈现有趣的效果,可以通过 VisualStateManager 的方式定义
可能UWP更加建议使用VisualState。 使用TemplatePart需要遵循以下原则: 尽可能减少TemplarePartAttribute协定。...使用VisualState的最佳实践 使用属性控制状态,并创建一个方法帮助状态间的转换。如上面的UpdateVisualStates(bool useTransitions)。...现在看起来是VisualState的胜利,其实在Silverlight和UWP中TemplatePart仍是个十分常用的技术,而在WPF中Trigger也工作得很出色。 ? ?...结语 VisualState是个比较复杂的话题,可以通过我的另一篇文章理解ControlTemplate中的VisualTransition更深入地理解它的用法(虽然是UWP的内容,但对WPF也同样适用...参考 创建具有可自定义外观的控件 Microsoft Docs 通过创建 ControlTemplate 自定义现有控件的外观 Microsoft Docs Control Customization
在WPF怎么在UI上添加超级链接 这篇文章的目的是介绍怎么在WPF里创建自定义的HyperlinkButton控件。...Hyperlink怎么设置样式 要给Hyperlink设置样式也有点难搞,因为在对象树上Hyperlink毫无存在感,所以也没办法使用Blend创建它的Style。 ?...Silverlight和UWP都很普通地提供了HyperlinkButton。...--some xaml--> ...(我记得在UWP中就没有这个问题,UWP的ContentPresenter自带透明背景) 4. 结语 HyperlinkButton明明很重要但WPF又不提供,幸好自己写起来也很简单。
,不要导航都新建,在构造 NavigationCacheMode = NavigationCacheMode.Enabled; List点击 我们创建数据Model,我们使用MVVM public...="720"/> ...> ...如果看不懂我上面说的,可以看我代码https://github.com/lindexi/UWP/tree/master/uwp/src/DetailMaster 我们开始的大屏幕是使用Grid有分开,左边列表
如果控件如现有控件功能相同,可以考虑使用Extend-、Advanced-、Simple-做前缀;也可以使用公司名做前缀,譬如ComponentOne公司的C1DataGrid。...如果控件通过鼠标选取内容(通常会打开一个Popup),可以使用-Picker做后缀。 尽量不要用-Panel做后缀,通常只有继承Panel的才会用这种方式命名,如StackPanel。...3.2 合并资源字典 如果一个项目的模板化控件太多,Generic.xaml会异常的复杂,可以将各个控件的资源文件分开存放,再在Generic.xaml中合并它们。...在控件库中,很多VisualState都是通用的,譬如Normal、Disabled、Selected,把它们全都写进一个VisualStates的类中可以方便调用。...创建模板化控件通常意味着会被其它开发者使用,那么就应该遵守Framework Design Guidelines。 如有错漏请指出。 5.
不过它用起来不怎么样,与其这样还不如参考UWP的ListView实现,而且动画效果也很好看: ?...幸好UWP还提供了一个ListViewItemExpanded样式,里面有完整的布局、VisualState等,不过总共有差不多500行,只拿其中MultiSelectStates的部分也将近100行,...ExtendedListBoxItem也模仿UWP提供了MultiSelectEnabled和MultiSelectDisabled两个VisualState,因为ListBoxItem需要知道承载它的...我在ControlTemplate多写了80行代码,因为没有用上VisualTransition所以这个ControlTemplate有一些Bug,反正只是用来验证添加的两个VisualState是否有效...如果有更复杂的需求,我建议买商业的控件,毕竟DataGrid的自定义可以很复杂,花时间不如花钱。 6.
我使用一个ProgressBar 需要设置他的各个值,如果不设置,一般最大值为100,最小为0,所以可以表示百分数,其中Value是double,绑定后台就好。...,打开我的进度条文件夹,里面有View文件夹 我在View有一个控件RountProgress复制他到你的解决方案,如果我的控件大小和你不一样,很简单调整,我就不说。...那么我的控件只需要指定Value就好啦,Value其实是从0到100,如果叫别的应该好,但是我不改,如果你觉得不想要,自己改 xmlns:view="using:lindexi.uwp.control.RountProgress.View...0:n+1,n就是第n个元素 一个显示一个不显示,循环 记得长度乘以是值*宽度 那么我们如果有一个值*宽度的到大小比我们的宽度还大,那么就会截断。...,可以在我们转换写属性,然后在界面把我们的宽度给属性,然后换为我们的宽度算,这个简单 代码在https://github.com/lindexi/UWP/tree/master/uwp/control/
领取专属 10元无门槛券
手把手带您无忧上云