WPF在画线的时候,调用Control0.TransformToAncestor(Control1).Transform(new System.Windows.Point(0, 0))方法转换坐标的时候,回报Control1不是Control0的上级,但实际上他们是上下级关系,原因可能是画线之前的工作还没有做完,所以需要将画线的代码单独开一个线程放到一个任务里,代码如下: Task.Factory.StartNew(() => { Thread.Sleep(); AddLine(output,…
Wpf 获取指定字体和大小的字符的长宽 运行环境:Win10 x64, NetFrameWork 4.8, 作者:乌龙哈里,日期:2019-05-09 参考: 章节: 比如一个 Consolas 字体,FontSize=15 的字符,到底有多宽多长,查了半天资料,终于想到一个笨方法,弄个单独的 FormattedText ,然后得出长宽 using System.Globalization; using System.Windows; using System.Windows.Media; na…
原文:WPF的逻辑树与视觉树(3)Visual呈现 这篇就点到为止,挑重点讲 绘图方式有两种 1.继承UIElement,重写OnRender方法 public partial class Window5 : Window { public Window5() { InitializeComponent(); this.Content = new RectangleElement(); } } public class RectangleElement : UIElement { protect…
原文:WPF的逻辑树与视觉树(2)Visual容器   一.摘要 虽然我们平时几乎不会从该类派生,但要想了解视觉树就必须要了解Visual,Visual是一个基本抽象类,继承自DependencyObject.其是所有控件的基类.并提供了视觉树操作的基本方法. 二.提纲 视觉树是一棵树 遍历视觉树 内置Visual集合容器ContainerVisual 小结 视觉树是一棵树 这好像是一句废话,但也没有错.我们来看下Visual提供的一些基本的成员. 首先我们创立一个测试的对象 public cl…
原文:WPF异常捕获,并使程序不崩溃! 在.NET中,我们使用try-catch-finally来处理异常.但,当一个Exception抛出,抛出Exception的代码又没有被try包围时,程序就崩溃了. 这些异常往往是你没有注意到的.在WPF中,提供了一种处理这些个异常的方式. 举例来说明. 1.先抛出个异常,不用try包围它. 在MainWindow上添加一个如下的Button. <Window x:Class="HandlingAnUnhandledException.MainWi…
来源:远程调试C#或 Visual Studio 中的 Visual Basic 项目 若要调试已部署在另一台计算机的 Visual Studio 应用程序,安装和在其中部署您的应用程序的计算机上运行远程工具. 将项目配置为从 Visual Studio 中,连接到远程计算机,然后运行应用. 有关远程调试通用 Windows 应用 (UWP) 的信息,请参阅调试安装的应用程序包. 要求 远程调试器是在 Windows 7 上受支持和更高版本 (不 phone) 和从 Windows Server…
本文分步介绍了多种从 Microsoft Visual C# 2005 或 Microsoft Visual C# .NET 程序向 Microsoft Excel 2002 传输数据的方法.本文还提供了每种方法的优点和缺点,以便您可以选择最适合您的情况的解决方案. 概述 最常用于向 Excel 工作簿传输数据的方法是“自动化”.利用“自动化”功能,您可以调用特定于 Excel 任务的方法和属性.“自动化”功能为您提供了指定数据在工作簿中所处的位置.将工作簿格式化以及在运行时进行各种设置的最大的…
什么是内存泄漏? 内存泄漏(memory leak),指由于疏忽或错误造成程序未能释放已经不再使用的内存的情况.内存泄漏并非指内存在物理上的消失,而是应用程序分配某段内存后,由于设计错误,失去了对该段内存的控制,因而造成了内存的浪费. C和C++内存泄露        对于C和C++这种没有Garbage Collection 的语言来讲,我们主要关注两种类型的内存泄漏: 堆内存泄漏(Heap leak).对内存指的是程序运行中根据需要通过malloc,realloc, new等从堆中分配的一块…
1. Visual C++ Redistributable for Visual Studio 2015系统要求:Windows 7情况下必须是Windows 7 with SP1.或者Windows10 2.系统检测方法:命令行输入winver.exe回车,如果你的windows版本是7600,需要将系统升级到7601即SP1. 3.升级方法: 1)首先在这里http://www.microsoft.com/zh-cn/download/details.aspx?id=5842##,下载SP1…
彻底卸载 Visual Studio 2013. Visual Studio 2015 以及后续各种版本使用方法0. 解压下载的 TotalUninstaller.zip 文件1. 使用 administrator 权限运行cmd2. 执行 Setup.ForcedUninstall.exe3. 根据提示键入 'Y' 开始卸载 下载地址: https://github.com/Microsoft/VisualStudioUninstaller…