Fork me on GitHub

林德熙

If you have any language confusion,please talk to me lindexi_gd@163.com.

win10 UWP 蜘蛛网效果

我看见了知乎首页登录背景和普通的地球人写的博客,发现了个好看的效果。

那么我来告诉大家如何做这个效果。

第一步是在 Canvas 画点,第二步是让点移动,第三步是画线

Read More


visual studio 2015 warning MSB3246

在我们很高兴的按下 本地计算机运行 按钮,希望看到我们程序运行的时候,垃圾vs就告诉我们,你的程序出现了问题,问题就是:

warning MSB3246: 解析的文件包含错误图像、无元数据或不可访问。未能加载文件或程序集“*.dll”或它的某一个依赖项。试图加载格式不正确的程序。

其中*.dll就是一个dll名称,那么遇到这个问题,不是修复vs就能做好的,我找了好久,在堆栈炸了找到一个可以用的方法

Read More


visual Studio 无法调试,提示程序跟踪已退出

今天在打码出现了vs无法调试,我在网上查了很久没有发现一个方法。

vs点击启动时,出现了一下提示

  程序“[12648] *.vshost.exe: 程序跟踪”已退出,返回值为 0 (0x0)
  程序“[12648] *.vshost.exe”已退出,返回值为 -1073741819 (0xc0000005) 'Access violation'。

Read More


sublime Text 正则替换

Read More


resharper 自定义代码片

我们在做一件事前,需要先做工具,工具好,最后我们做事也快。这个过程需要的时间也是值得的。

我们在C#下使用的工具,有一个神器,Resharper,他可以帮修改代码、重构,做很多重复的事。

而Resharper 虽然强大,但是还不能全和我们需要的一样,如代码片,有些需要或经常使用的代码还是没有,需要自己去写,他自带的代码片叫 Live Template.

Resharper的代码预知和 VisualStudio 的代码片相似,但是他可以知道当前输入 是变量还是属性,这样就比原来的好用。

本文主要:如何修改Resharper代码片,自定义代码片

Read More


matlab 画图

本文讲如何使用 matlab 画图。

本文包括:折线图的 x轴和y轴、标题、图例

柱状图填充图案

Read More


git镜像仓库

有时候我们会把一些仓库放到本地,当他更新的时候,可以使用简单命名更新他。

不是所有时间我们都有网,所以把远程的仓库作为镜像,可以方便我们查看

普通的git clone不能下载所有分支,想要简单的git clone所有分支,可以用镜像方法

Read More


git 合并两个仓库

我有两个仓库,一个是gitbook在写一本UWP入门,一个是放在github的垃圾,这个是我想要开个人网站,但是做的还是不行https://github.com/lindexi/lindexi.github.io结果发现我需要做html,本来的文件没法直接转过去,但是我又不想使用第三方工具,于是最后我想着自己来写一个,于是就做了winMarkdown,win10软件,不过已经几个月没做

好了还是回到问题,我想把两个git合并

Read More


git 分支改名

给一个git分支改名的方法很简单

Read More


git push 错误 hook declined

我把仓库上传到 gogs 出现错误,提示如下 remote: hooks/update: line 2: E:/gogs/gogs.exe: No such file or directory

gogs 仓库无法上传,一个原因是移动了gogs,如果把gogs放在移动U盘,插入时,上传经常出现这个问题。

Read More


docfx 做一个和微软一样的文档平台

开发中,有一句话叫 最不喜欢的是写文档,最不喜欢的是看别人家代码没有文档。那么世界上文档写最 la 好 ji 的就是微软了,那么微软的api文档是如何做的?难道请了很多人去写文档?

实际上微软有工具用来生成 api 文档和教程。

我这里说的微软文档是:https://docs.microsoft.com/en-us/dotnet/articles/csharp/index 这个网站,不是以前的。

Read More


cant found Microsoft.VSSDK.BuildTools.15.0.26201

如果在vs扩展开发中出现

    严重性 代码  说明  项目  文件     禁止显示状态
错误      Failed to load 'C:\程序\EncodingNormalior\packages\Microsoft.VSSDK.BuildTools.15.0.26201\tools\VSSDK\bin\VSCT.exe' Assembly. 未能加载文件或程序集“file:///C:\公司\EncodingNormalior\packages\Microsoft.VSSDK.BuildTools.15.0.26201\tools\VSSDK\bin\VSCT.exe”或它的某一个依赖项。系统找不到指定的文件。   EncodingNormalizerVsx

Read More


WPF 鼠标移动到列表上 显示列表图标

Read More


WPF 设置输入只能英文

有时输入只能让用户输入英文,那么如何设置输入只能英文?

Read More


WPF 解决 ViewBox 不显示线的问题

ViewBox 是一个好用的东西,但是在他缩小的时候,可能有一些线无法显示。

现在公司项目就是做一个类似 ppt 的软件,所以需要使用缩略图,而对于矩形形状,在缩略图,经常看不到线。

因为 ViewBox 和 visualBrush 都使用 邻近算法 所以 ViewBox 和 visualBrush 都存在丢失线的问题。

本文提供一个算法,解决 单线条在WPF不显示问题。1像素线段在WPF不显示问题。ViewBox 缩小失去线段问题。

Read More


WPF 绑定密码

我们发现我们无法绑定密码框的密码,PasswordBox 的 Password 不能绑定。

我们想做 MVVM ,我们需要绑定密码,不能使用前台 xaml.cs 监听 密码改变得到密码的值,传到 ViewModel 。

本文提供一个简单方法来绑定 WPF 的 PasswordBox 的 Password 。这种方法不仅在 WPF 可以使用,在 UWP 也可以使用。关于 UWP 绑定密码,可以在我博客 win10 uwp 绑定密码 查看。

Read More


WPF 程序生成类库错误

把WPF程序输出改为类库,报错

    库项目文件无法指定 ApplicationDefinition 元素 项目文件包含无效的属性值

Read More


WPF 拖动滚动

有时候需要这个效果,触摸向下可以向下滑动,不需要鼠标滑轮。

Read More


WPF 如何调试 binding

如果是写在 xaml 的绑定,很难看到是那里出错

如何做vs 调试 binding?

Read More


WPF DrawingVisual

本文:如何自定义控件用 DrawingVisual 画图

本文不会讲 DrawingVisual 是什么,只会告诉简单方法画图。

为何需要学这个,如果需要画出图形,对性能有要求,了解WPF如何画图,就需要知道这个。

先创建最简单使用,就是显示文字或显示点。

我觉得显示文字简单,于是开始写代码,先不要去想做什么

首先新建一个控件,他是可以让 DrawingVisual 显示。

    public class MyVisualHost : FrameworkElement

这是很基础一个类,几乎没有什么功能。

于是新建一个 FrameworkElement 需要添加 一些方法

这个类不是主要的,他是让DrawingVisual显示,在构造函数写

这就是可以让 他可以显示。为何这样可以,参见:http://blog.csdn.net/changtianshuiyue/article/details/26981797

主要的类StrokeVisual,其实很简单

        public class StrokeVisual : DrawingVisual

来看下他的方法

这样就可以画出文字。

需要在xaml添加

            <local:MyVisualHost></local:MyVisualHost>

为什么这样就可以画出?

那么如何做一个鼠标点下就画点的软件?

调用 RenderOpen 就可以打开一个 DrawingContext ,他提供很多方法,在他上面使用就可以画出,不过画出来看不到。需要添加到FrameworkElement才可以。

那么如何做出下图的程序?

首先对代码做修改,在 Windows 的MouseMove 调用 StrokeVisual 的 Add 方法和 画出来

需要获得鼠标的位置

    p=e.GetPosition(this);

传入 StrokeVisual

            _s.Add(new StylusPoint(p.X, p.Y));
            _s.Draw();
        public StrokeVisual()
        {
            Stroke = new Stroke(new StylusPointCollection(new Point[] { new Point(10, 10), }), new DrawingAttributes()
            {
            });


        }

        public void Add(StylusPoint point)
        {
            Stroke.StylusPoints.Add(point);
        }

        private Stroke Stroke;

那么如何从 Stroke 画出?

可以使用

            using (var dc = RenderOpen())
            {
                Stroke.Draw(dc);
            }

Stroke 传入 dc 就可以画出来。

Read More


WPF DelegateCommand 出现Specified cast is not valid

使用 DelegateCommand 出现 Specified cast is not valid

Read More


Visual studio 创建项目失败vstemplate

Visual studio 创建项目失败 提示 the vstemplate file references the wizard class ‘Microsoft.VisualStudio.WinRT.TemplateWizards.ApplicationInsights.Wizard’ which does not exsist in the assembly ‘Microsoft.VisualStudio.WinRT.TemplateWizards, Version=14.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a’.

Read More


Visual studio C# 代码使用 NotNull

我们经常看到有代码使用 NotNull 特性,这时如果我们输入可空参数,Resharper 就会告诉我们,输入了空参数。

Read More


Visual Studio 自定义项目模板

经常需要新建一个项目,项目有很多重复的东西,如然后新建View文件夹,ViewModel文件夹,Model文件夹,还有把我们的ViewModelBase放入ViewModel,如果还用框架,还需要加上好多。

还需要在每个文件夹加上声明,于是每次做的重复的就有很多。

Read More


UWP 分享用那个图标

有两个图标,如果让你选,你会用哪个图标做分享?

Read More


C#枚举中使用Flags特性

如果对一个值可以包含多个,那么可以使用枚举,加上Flags

本文告诉大家如何写一个 Flags。

Read More


C#委托

关于什么是委托,委托如何使用,我在这里就不说了。

需要说的:

  1. 委托是函数指针链

  2. 委托的 BeginInvoke

  3. 委托如果出现异常,会如何

Read More


C#命令行解析工具

我将告诉大家两个方法去获取C#输入的命令行参数。

Read More


C#同步方法转异步

Read More


C#判断文件是否被混淆

可以使用混淆工具对一个DLL 和 exe 进行混淆。

但是如何知道一个文件是否已经混淆了。

在发布之前,需要知道是不是有文件忘了混淆。

Read More