原文 将 WPF.UWP 以及其他各种类型的旧 csproj 迁移成基于 Microsoft.NET.Sdk 的新 csproj 写过 .NET Standard 类库或者 .NET Core 程序的你一定非常喜欢微软为他们新开发的项目文件(对于 C#,则是 csproj 文件).这种文件非常简洁,组织一个庞大的项目也只需要聊聊二三十行:也非常易读,你可以轻易地修改其代码而不用经过过多的提前学习.当然,微软曾经尝试过用 project.json 来组织项目文件,不过只有短短的预览版阶段用过,此后…
写过 .NET Standard 类库或者 .NET Core 程序的你一定非常喜欢微软为他们新开发的项目文件(对于 C#,则是 csproj 文件).这种文件非常简洁,组织一个庞大的项目也只需要聊聊二三十行:也非常易读,你可以轻易地修改其代码而不用经过过多的提前学习.当然,微软曾经尝试过用 project.json 来组织项目文件,不过只有短短的预览版阶段用过,此后就废弃了. 然而组织传统 .NET Framework 类库的 csproj 文件却极其庞大且难以理解.而本文将提供一种迁移方法,…
原文地址:Implementing a simple messenger component for WPF, UWP and Xamarin 欢迎大家关注我的公众号:程序员在新西兰了解新西兰IT行业真实码农生活请长按上方二维码关注“程序员在新西兰” 最初的需求是我需要开发一个实现Socket发送/接收的WPF应用程序. 首先,我用MVVM模式创建了一个基本的WPF应用程序. 然后,我做了一个项目来完成所有与Socket通信有关的工作. 接下来,我必须将Socket项目集成到ViewModel项…
原文:WPF编程,通过Path类型制作沿路径运动的动画一种方法. 版权声明:我不生产代码,我只是代码的搬运工. https://blog.csdn.net/qq_43307934/article/details/87339456 From/To/By 类型动画的输入是From.To和By参数: KeyFrame类型动画的输入是关键帧: 而Path类型的动画输入则是PathGeometry,这是其最大特点.  Path类型的动画是一种可以沿指定路径运动的动画, 使用DoubleAnimationU…
原文:WPF编程,通过Path类型制作沿路径运动的动画另一种方法. 版权声明:我不生产代码,我只是代码的搬运工. https://blog.csdn.net/qq_43307934/article/details/87358989 上一篇文章给了一个这方面的例子,那个文章里是通过后台按钮事件进行动画的开始.停止.继续等. 这里给出的是通过前台XAML来实现. 1.前台 定义路径.定义运动的主体,这里是一圆. <Path Stroke="Black" StrokeThickness…
原文:WPF编程,通过KeyFrame 类型制作控件线性动画的一种方法. 版权声明:我不生产代码,我只是代码的搬运工. https://blog.csdn.net/qq_43307934/article/details/87271931 From/To/By类型的动画仅支持从一个值到另一个值的线性内插, 或者有限形式的非线性内插(AccelerationRatio和DecelerationRatio). 如果要描述一个更复杂的动画,如希望一个动画的属性从A值到B值再到C值,则用Key frame…
在开发 markdown-mail 时遇到了一些诡异的情况.代码是这么写的: <TextBox Text="{Binding Text, Mode=TwoWay}"/> 然而在 TextChanged 事件之后延时执行了一些操作时,从 ViewModel 里拿到的值却始终是旧的. 阅读本文将了解其原因和解决办法. 无论是 WPF 还是 UWP,Binding 中都有 UpdateSourceTrigger 属性. 在 WPF 中,其可取的值为: public enum Up…
原文 | Dmitry 翻译 | 郑子铭 自Visual Studio 2019推出以来,我们为使用WPF或UWP桌面应用程序的XAML开发人员发布了许多新功能.在本周的 Visual Studio 2019 版本 16.4 和 16.5 Preview 1中,我们希望借此机会回顾一下全年的新变化.如果您错过了我们以前的版本,或者只是没有机会赶上,那么此博客文章将是您可以看到我们在整个2019年所做的每项重大改进的地方. XAML实时调试工具: XAML C# Edit & Continue 现…
原文 | Dmitry 翻译 | 郑子铭 自Visual Studio 2019推出以来,我们为使用WPF或UWP桌面应用程序的XAML开发人员发布了许多新功能.在本周的 Visual Studio 2019 版本 16.4 和 16.5 Preview 1中,我们希望借此机会回顾一下全年的新变化.如果您错过了我们以前的版本,或者只是没有机会赶上,那么此博客文章将是您可以看到我们在整个2019年所做的每项重大改进的地方. XAML实时调试工具: XAML C# Edit & Continue 现…
在WPF程序中将控件所呈现的内容保存成图像 转自:http://www.cnblogs.com/TianFang/archive/2012/10/07/2714140.html 有的时候,我们需要将控件所呈现的内容保存成图像保存下来,例如:InkCanvas的手写墨迹,WebBrowser中的网页等.可能有人会说,这个不就是截图嘛,找到控件的坐标和大小,调用截图API不就可以了嘛.的确,对于规则的控件来说,通过截图的却可以实现,可是,如果控件不规则或不透明度不是100%,则会把其背景控件的视觉效…
/// <summary> /// 将泛类型集合List类转换成DataTable /// </summary> /// <param name="list">泛类型集合</param> /// <returns></returns> public static DataTable ListToDataTable<T>(List<T> entitys) { //检查实体集合不能为空 if (…
在 Connect(); 2018 大会上,微软发布了 .NET Core 3 Preview,以及基于 .NET Core 3 的 WPF:同时还发布了 Visual Studio 2019 预览版.你可以基于 .NET Core 3 创建 WPF 程序.不过,如果你已经有基于 .NET Framework 的 WPF 项目,那么如何快速迁移到基于 .NET Core 的版本呢? 本文将指导大家将现有基于 .NET Framework 的 WPF 项目迁移到基于 .NET Core 3 的版本…
转换成json字符串,与json字符串转换成java类型都要先转换成json对象…
原文:在WPF程序中将控件所呈现的内容保存成图像 有的时候,我们需要将控件所呈现的内容保存成图像保存下来,例如:InkCanvas的手写墨迹,WebBrowser中的网页等.可能有人会说,这个不就是截图嘛,找到控件的坐标和大小,调用截图API不就可以了嘛.的确,对于规则的控件来说,通过截图的却可以实现,可是,如果控件不规则或不透明度不是100%,则会把其背景控件的视觉效果也给截取下来. 要实现只对控件进行截图,可以利用RenderTargetBitmap类获取Visual对象的视觉效果,从而实现…
好几个月没写 blog 了,一个是在忙新版的碧影壁纸,另一方面是等(观望)周年更新的 api(不过现在还是比较失望,仍然没法支持矩形以外的 Clip).闲话少说,进入主题. 在 UWP 中,出于性能考虑,微软是不建议.不推荐对会影响布局的属性进行动画的.例如 Width 和 Height 这种,如果真的需要对这些属性进行动画的话(毕竟需求就摆在那里),可以将 Animation 的 EnableDependentAnimation 属性设置为 true 来对这些属性进行动画的. 但是,对于 Th…
问题描述:WPF is unable to create a type for data templateWPF使用mvvm模式无法加载DataTemplate模板定义的资源,提示无法从文本创建类型错误.原因:Resource Dictionary的编译动作被设置成了Resource,设置成Page则不会出现这个问题.解决方案:将文件的编译行为修改为“Page”.…
WPF DataGrid支持下面几种列类型: DataGridTextColumn DataGridCheckBoxColumn DataGridComboBoxColumn DataGridHyperLinkColumn DataGridTemplateColumn…
场景:添加ComboBox样式,界面卡死,日志异常文件如下: -- ::, | ERROR | System.InvalidCastException: 无法将类型为“System.Windows.Media.Color”的对象强制转换为类型“System.Windows.Media.Brush”. 在 System.Windows.Shapes.Shape.get_Stroke() 在 System.Windows.Shapes.Shape.get_IsPenNoOp() 在 System.W…
只要你用 XAML 写代码,我敢打赌你一定用各种方式使(nuè)用(dài)过 Grid.不知你有没有在此过程中看到过 Grid 那些匪夷所思的布局结果呢? 本文将带你来看看 Grid 布局中的 Bug. 无限空间下的比例 先上一段代码,直接复制到你的试验项目中运行: <Canvas> <Grid Height="100"> <Grid.ColumnDefinitions> <ColumnDefinition Width="100&q…
using (FileStream fs = new FileStream("UnitFile/Report2.xaml", FileMode.Open)) { rootElement = (FrameworkElement)XamlReader.Load(fs); } 在用XamlReader.Load时,报错. Report2.xaml文件的内容如下: <Grid > <Grid.RowDefinitions> <RowDefinition Heigh…
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows; using System.Windows.Controls; using System.Windows.Data; using System.Windows.Documents; using System.Windows.I…
Windows.UI.Composition API是可以从任何通用Windows平台应用程序调用的声明性保留模式API,从而可以直接在应用程序中创建合成对象.动画和效果. Composition API在 10586SDK 中就已经出现,但是在年度更新之后,该SDK变得更加完善,也有了更多样性的功能.今天我们就来谈谈如何在基于 Anniversary SDK 的UWP应用中使用Composition API创建DropShadow效果. 1.首先,假如我们想要为一个Ellipse对象创造Dro…
string,DELPHI2009以前的版本string=ansistring,一个字符占一个字节,DELPHI2009及以上版本string=unicodestring,一个字符占二个字节. char,DELPHI2009以前的版本char=ansichar,一个字节,DELPHI2009及以上版本char=widechar,二个字节. widestring,一个字符占二个字节,delphi所有版本都支持,但基于firemonkey的app不支持. olevariant,delphi所有版本都…
更改mapper文件的sql如下: <if test="interger != null"> interger= #{interger} </if> 原因:Interger类型的数据,当为0的时候传到后台,会被识别成" "(空字符串)处理.…
1,import com.fasterxml.jackson.databind.ObjectMapper; ObjectMapper mapper = new ObjectMapper(); Myclass myclass = mapper.readValue(jsonStr , Myclass.class); //这里Myclass是我自己定义的类,里面有一系列的属性字段.jsonStr是需要传入的json参数 2,import com.alibaba.fastjson.JSONObject;…
带有图片的form表单上传数据是很麻烦的,因为图片通常都是和文字分开上传,这是很麻烦的,所有吧图片转成base64就可以和当成文字上传了.话不多少,看代码: 首先定义一个类型为file的input标签还要定义一个onchange事件,并传入一个event参数. <div> <input type="file" id="imgTest" type="file" onchange="imgChange(event)&quo…
在工作中,如果需要跟XML打交道,难免会遇到需要把一个类型集合转换成XML格式的情况.之前的方法比较笨拙,需要给不同的类型,各自写一个转换的函数.但是后来接触反射后,就知道可以利用反射去读取一个类型的所有成员,也就意味着可以替不同的类型,创建更通用的方法.这个例子是这样做的:利用反射,读取一个类型的所有属性,然后再把属性转换成XML元素的属性或者子元素.下面注释比较完整,就话不多说了,有需要看代码吧! using System; using System.Collections.Generic;…
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Data.SqlTypes; using System.Data; using System.Reflection; using System.IO; using System.Xml; namespace CollectionToXml { class Program { static void M…
如a[5]="1234"转换成a[5]={0x12,0x34} 代码如下: void HexStrToByte(const char* source, unsigned char* dest, int sourceLen) { short i; unsigned char highByte, lowByte; for (i = 0; i < sourceLen; i += 2) { highByte = toupper(source[i]); lowByte = toupper(…
SELECT TypeName ,(SELECT ','+ UserName FROM [ContainerMembers] t WHERE TypeName= aa.TypeName FOR XML PATH('')) AS Users  FROM [ContainerMembers] aa  GROUP BY [TypeName]…